【发布时间】:2012-01-24 14:00:41
【问题描述】:
我一直在努力弄清楚为什么我在 PHP 中使用 curl 库的页面在我的开发机器上工作但在我的远程服务器上却失败了。一种怀疑是它与curl 是否支持 SSL 有关,如one of the comments here 所示:
如果您的 curl 安装没有使用 SSL 支持编译,那么当您试图找出 curl_exec() 未能失败或执行其他任何操作的原因时,您会碰壁...
所以,我运行this script 来了解我的开发机器 和远程服务器 是否支持 SSL。我的 dev machine 和 remote server 都产生了以下内容(看起来都支持 SSL):
CURL_VERSION_IPV6 匹配 CURL_VERSION_KERBEROS4 不匹配 CURL_VERSION_SSL 匹配 CURL_VERSION_LIBZ 匹配
但是,当我在我的远程服务器(我的脚本失败的那个服务器)上的命令行运行curl 时,我得到了以下结果(即curl 挂起):
curl -v http://<my-domain>/blog/press-release/
* About to connect() to <my-domain> port 80
* Trying 66.201.45.235...
相同的curl 命令行在我的开发机器上运行良好,尽管它返回了不同的IP 地址:
curl -v http://<my-domain>/blog/press-release/
* About to connect() to <my-domain> port 80 (#0)
* Trying 10.3.1.207... connected
请...请帮忙?还有其他方法可以找出我的 dev machine 和 remote server 上安装的 curl 之间的区别吗? 他们为什么返回不同的地址?
【问题讨论】:
-
检查 /etc/hosts.
<my-domain>可能设置为不同的 IP 地址,以便在您的开发服务器上进行测试。
标签: php command-line curl