【发布时间】:2014-02-15 20:27:11
【问题描述】:
我有一个解析 XML 文件并将其保存到数据库的脚本。我正在尝试从外部 URL 获取 XML 文件,但它不起作用。但是,当我在本地测试脚本时,它确实有效。例如,我转到我要解析的 URL,将该文件保存到我的计算机,将其上传到我的服务器并使用此脚本:
$url = 'sample_xml/sample.xml';
$xml = simplexml_load_file($url);
它工作正常。然后当我尝试运行相同的脚本但我将实际的 url 替换为 $url 变量时,我得到了这个错误:
Warning: simplexml_load_file(): Couldn't resolve host name in /foo/foo.php on line 12
我尝试解析的服务器是否可能不允许它?我在浏览器窗口中拉出 XML 文件没有问题,它不是受密码保护的站点或任何东西,所以我想知道为什么 simplexml_load_file 无法解析主机名。
感谢您的帮助!
【问题讨论】:
-
尝试通过 curl 连接到该 url 并查看您的网络服务器是否可以访问该站点。如果您运行的是 Linux 的安全增强版本,那么运行该命令的用户可能很重要。