gpt4 book ai didi

PHP5 - 未处于交互模式时无法解析主机名

转载 作者:可可西里 更新时间:2023-11-01 00:27:45 24 4
gpt4 key购买 nike

我正在使用运行 Apache2/PHP5 的 OS X 10.6 服务器,当“fopen()”尝试从远程服务器检索文件时,PHP 无法解析主机名。当在命令行上以交互模式运行时,“fopen()”可以完美运行。但是,当通过网络运行时,它总是会失败并出现错误:

failed to open stream: php_network_getaddresses: getaddrinfo failed: nodename nor servname provided, or not known

我找不到这个问题的根源:“fopen()”在给定 IP 地址而不是主机名时在网络上工作; 'gethostbyname()' 在 web 上运行时也会失败(它不会出错,它只会返回给它解析的任何主机名),但在交互模式下运行时也能正常工作。唯一的异常(exception)似乎是“dns_get_record()”,它在网络上或交互模式下运行时运行良好。

我一直在尝试查找服务器上的 DNS 问题,但 dig、nslookup 和 ping 都有效,“scutil -r”表示可以使用当前 DNS 设置访问远程服务器。关于问题可能出在哪里的任何想法?

最佳答案

尝试使用“--disable-ipv6”选项重新编译 PHP。然后,apachectl 停止并启动(不是“apachectl restart”)。我在 Mac OS 10.6.4 + 手动编译的 PHP5.3.3 + Apache2.2.16 上得到了同样的错误信息。

关于PHP5 - 未处于交互模式时无法解析主机名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2223620/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com