php soap服务器无法访问localhost

时间:2013-12-09 18:45:23

标签: php web-services soap wsdl

我有一个php Soap webservice和一个需要调用它的perl脚本。

但它返回错误

Parsing WSDL: Couldn't load from 'http://xxxxxx:8888/index.php/backup/index' : 
failed to load external entity "http://xxxxxx:888/index.php/backup/index"

xxxxx是我服务器的动态主机名。

如果我使用

从localhost调用web服务
$client=new SoapClient('http://localhost:8888/index.php/backup/index',array('trace' => 1));

如果工作正常,但如果我尝试

$client=new SoapClient('http://xxxx:8888/index.php/backup/index',array('trace' => 1));

它给了我这个错误。

所以问题是远程脚本使用他的主机名调用webservice,而web服务无法解决这个问题....我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

发现问题。它在yii类CWebService中。 似乎无法解析本地主机的名称......如果从外部主机调用它将始终失败。

我解决了它将名称强制转换为/ etc / host中服务器的ip,如

127.0.0.1 www.website.com

相关问题