Php 无法在Directadmin Centos上对任何远程服务器:8080端口执行Curl或SoapClient操作

Php 无法在Directadmin Centos上对任何远程服务器:8080端口执行Curl或SoapClient操作,php,web-services,curl,soap,wsdl,Php,Web Services,Curl,Soap,Wsdl,我正在尝试通过php连接Soap Api ini_set('soap.wsdl_cache_enabled',0); ini_set('soap.wsdl_cache_ttl',0); $opts = array( 'ssl' => array('ciphers'=>'RC4-SHA', 'verify_peer'=>false, 'verify_peer_name'=>false) ); $params = array

我正在尝试通过php连接Soap Api

ini_set('soap.wsdl_cache_enabled',0);
    ini_set('soap.wsdl_cache_ttl',0);

    $opts = array(
        'ssl' => array('ciphers'=>'RC4-SHA', 'verify_peer'=>false, 'verify_peer_name'=>false)
    );
    $params = array ('encoding' => 'UTF-8', 'verifypeer' => false, 'verifyhost' => false, 'soap_version' => SOAP_1_1, 'trace' => 1, 'exceptions' => 1, "connection_timeout" => 5, 'stream_context' => stream_context_create($opts) );
    $url = "http://x.x.x.x:8080/ws-relay/MessageRelayService?wsdl";
    $client =new SoapClient($url,$params);
    $result = $client->sendMessageOneToMany(array(
        "username"  => 'xxxxx',
        "password"  => 'xxxxx',
        "originator"  => "50004132311446",
        "destination"  => $numbers,
        "content"  => $massage,

    ));
但它总是有一个

SOAP-ERROR:解析WSDL:无法从“x.x.x.x:8080/ws-relay/MessageRelayService?WSDL”;“:无法加载外部实体“x.x.x.x:8080/ws-relay/MessageRelayService?WSDL”;”)

错误

我还试图卷曲这个WSDL,但我得到了

[root@myhost ~]# curl http://x.x.x.x:8080/ws-relay/MessageRelayService?wsdl
curl:(7)连接到x.x.x.x端口8080失败:连接超时

错误

所以我也试着用curl-portquick.net:8080/进行测试,结果又超时了

防火墙中是否存在阻止我向8080端口发送请求的规则


如何在centos directadmin vps中解除对其的阻止?

经常发生这种情况,因为您的ip地址已被阻止,或者服务器本身存在问题

欲了解更多信息

卷发无法连接(7)

无法将()连接到主机或代理

根据您的命令:

curl http://xx.xx.xx.xx:xxxxws-relay/MessageRelayService?wsdl
在我自己的电脑上执行时,我得到了正常的响应

因此,您需要在类中使用代理

要通过代理服务器建立HTTP连接,选项 代理服务器主机、代理服务器端口、代理服务器登录名和代理服务器密码也可以使用 可用

因此,您需要将一些参数添加到
$params
数组中,如下所示:

$params['proxy_host'] = "proxy_ip";
$params['proxy_port'] = "proxy_port";
也可以(我个人建议)使用基于它的过程、函数或包

如果要使用cli方式,那么您的命令可能如下:

curl http://xx.xx.xx.xx:xxxx/ws-relay/MessageRelayService?wsdl -x "ip_address:ip_port"
袜子

curl http://xx.xx.xx.xx:xxxx/ws-relay/MessageRelayService?wsdl -x "ip_address:ip_port" --socks5

这是我防火墙设置中的一个问题,支持中心为我解决了它!但我如何才能在centos中解锁这些东西,我在谷歌上看到了一切!您正在尝试爬网您自己的服务器吗?或者是一个外部服务器?它是一个Sms Api服务器(外部服务),那么你必须1-联系他们以解除阻止,2-注册到他们的Api,3-使用代理服务器连接到他们的Api。问题出在我自己的服务器防火墙上,而不是他们