2011-04-03 135 views
1

我一直在试图弄清楚有什么问题,以及这个试图进行SOAP调用的下面的PHP代码有什么问题。我无法得到它的时候我主办的免费虚拟主机网站使用免费虚拟主机网站的NUSOAP问题

include_once("nusoap/lib/nusoap.php"); 

// create the client and define the URL endpoint 
$client = new nusoap_client('http://xxxyyy.zzz:1881/'); 

// set the character encoding, utf-8 is the standard. 
$client->soap_defencoding = 'UTF-8'; 

$client->call('sendSMS', array('uName' => 'kd81fg', 
      'uPin' => '18416', 
      'MSISDN' => '09156300965', 
      'messageString' => 'THIS IS A SAMPLE MESSAGE', 
      'Display' => '1', 
      'udh' => '', 
      'mwi' => '', 
      'coding' => '0'), 
      "http://ESCPlatform/xsd"); 

PHP的工作时,我尝试使用此托管在我的本地主机,它的工作,但是当我试图把它上传(我试过很多免费的网站托管网站)到一个虚拟主机网站,并尝试运行它,它不会工作。

我不知道什么是错,但我很确定代码是完美的。我猜测我尝试的免费网站托管网站不允许使用SOAP/XML,或者cURL被禁用,或者url_fopen在其php.ini(con​​fig)或其他地方关闭。我现在不知道什么是错,我需要立即完成我正在做的事情。

更新:我想回应什么错误,在这里它说什么

HTTP Error: Couldn't open socket connection to server http://xxxyyy.zzz:1881/ , Error (111) Connection refused.

我检查卷曲和东西的phpinfo。

我也在想,也许问题是在免费的主机上,他们不允许连接端口1881,但我试图扫描并检查如果1881是打开我的本地主机上,它说我的1881是关闭的,现在我很困惑。

回答

1

在免费主机上关闭1881号端口很不方便。尝试在电脑/路由器上关闭它。如果出现相同的错误,则应该是这个问题。

编辑:你检查phpinfo()卷曲和东西?

编辑2:您是否需要将客户端的主机添加到服务提供商的网站上的配置文件中,例如当您要使用Google maps API时?

0

很多时候,免费的网络主机将阻止传出端口。如果你可以用apache或nginx设置一个反向代理(我假设你在托管SOAP服务器)。