我在PHP中实现Mashups时遇到了一个问题。现在我使用的是PHP Version5。
我想从网站上获取flickr的照片信息。我认为代码是正确的。但我总是会遇到这样的错误:
这是我的php代码:
<?php
header('Content-Type: text/xml');
?>
<?php
$url="http://api.flickr.com/services/rest/?method=flickr.people.getPublicPhotos&api_key=46566747d88fe250fd631deb0033023a&user_id=64002153@N00";
$url=DOMDocument::load($url);
echo $url->saveXML();
?>正如您所看到的,我将从flickr站点获取远程xml文件。但我总是被这个错误所拖累:
Warning: DOMDocument::load() [function.DOMDocument-load]: php_network_getaddresses: getaddrinfo failed: No such host is known. in C:\wamp\www\mashup\k\flickrproxy.php on line 13
Warning: DOMDocument::load(http://...@N00) [function.DOMDocument-load]: failed to open stream: No such file or directory in C:\wamp\www\mashup\k\flickrproxy.php on line 13
Warning: DOMDocument::load() [function.DOMDocument-load]: I/O warning : failed to load external entity "http://api.flickr.com/services/rest/?method=flickr.people.getPublicPhotos&api_key=46566747d88fe250fd631deb0033023a&user_id=64002153@N00" in C:\wamp\www\mashup\k\flickrproxy.php on line 13您可以认为远程文件不存在,但它确实存在。link text
如您所见,这是一个准确的xml文件。
发布于 2009-11-26 22:57:31
可能是allow_url_open已禁用。
试着在你的服务器上通过其他方式读取http://api.flickr.com/services/rest/?method=flickr.people.getPublicPhotos&api_key=46566747d88fe250fd631deb0033023a&user_id=64002153@N00,比如写或者卷曲它。
发布于 2009-11-26 22:57:33
看起来您的服务器无法连接到flickr站点,可能是由于防火墙或DNS设置,或者正如@Ivan指出的那样,由于PHP配置(尽管我相信错误消息将是不同的)。
您运行的是哪种服务器?
另外,您是否可以尝试从本地域(localhost或127.0.0.1)加载文件?那么它起作用了吗?
这也可能是DNS问题。flickr服务器是否通过IP而不是主机名提供访问?
https://stackoverflow.com/questions/1804126
复制相似问题