[请益] nusoap问题

楼主: opqr9877 (opqr)   2016-03-29 14:22:38
最近在写一个使用nusoap的网页
目前确定的是client端与server端互相ping的到
两端的防火墙也都关闭了
client端版本为windows server 2012 IIS8.5
server端版本为windows. server2003 IIS6

可是在call的时候却没有抓到资料出现此讯息
err:HTTP Error:couldn't open socket connection to server http://xx.xxx.xx.xxx/w
,因为连线的主机无法回应
想请问原因及解决方法
程式码如下
$url='http://xx.xxx.xx.xxx/webservice.asmx?wsdl';
$client =new nusoap_client($url,false);
$funcname='chkmemberdata';
$params=array('menid'=>'testmen','pwd'=>'0000');
$backarr=$client->call($funcname,$params);
if($err=$client->getError()){
echo "err:".$err;
}
手机排版
造成阅读不适请见谅
作者: weiclin (CC)   2016-03-29 15:50:00
如果你开浏览器可以连上那个网址吗?
楼主: opqr9877 (opqr)   2016-03-29 16:14:00
可以 所以非常纳闷
作者: weiclin (CC)   2016-03-29 17:40:00
有curl的话,试试看先 $client->setUseCURL(true)另外检查一下 php.ini 有没有限制 fsockopen 的使用像是 allow_url_fopen 或是 disable_functionsnusoap会用到fsockopen,所以你可以把问题简化先确认 fsockopen 能用, 也能开启你要的网址
楼主: opqr9877 (opqr)   2016-03-29 18:04:00
$client->setUseCURL(true) 出现HTTP Error :cURL ERRORFailed connet ti xx.xxx.xx.xxx:80...下面有content:http_code:0……等文字想请问php.ini里面没有fsockopen的属性是要自己增加吗还有allow_url_open是设on. disabled_functions的设off吗
作者: weiclin (CC)   2016-03-29 18:22:00
allow_url_fopen on, disable_functions应该空的
楼主: opqr9877 (opqr)   2016-03-30 08:40:00
w大我发现$client->setUseCURL(true)并没有错误讯息 而php.ini的allow_url_opqn跟disable_functions的设定也都如你所说的那样 这样还有可能是哪里的问题
作者: weiclin (CC)   2016-03-30 10:57:00
你先用fsockopen试试看能不能抓到google.com的html可以的话就不会是fsockopen的问题,往防火墙检查吧遇到这种情况我通常是wireshark抓封包看一下就大概知道了封包有没有过来,连线有没有建立,有没有回应等等的
楼主: opqr9877 (opqr)   2016-03-30 13:24:00
我另外用一支程式参照这个网站的做法 http://goo.gl/LEqpzD. 结果出现这个画面 http://i.imgur.com/y1TKCQq.jpg这样是我的socket出问题了吗 囧
作者: weiclin (CC)   2016-03-30 14:41:00
你可以先在本机跑,确认你的php能抓到东西然后放到server就不行了的话,检查看看IIS的权限?因为我对IIS不熟,不知道有没有可能限制这个另外fsockopen没那么复杂,看官方的 example #1 就可以了http://php.net/manual/en/function.fsockopen.php看起来是成功啦,fsockopen没有嫌疑了
楼主: opqr9877 (opqr)   2016-03-31 11:38:00
好的 谢谢w大的帮忙

Links booklink

Contact Us: admin [ a t ] ucptt.com