Yii curl无法解决主机错误CentOs 6

时间:2013-09-19 18:00:09

标签: php curl yii centos

我遇到错误"Couldn't resolve host '...'"时遇到了麻烦。 我还研究了很多主题,但找不到解决方法。

第一次,同样的代码,我可以做curl毫无问题。但今天突然停止了工作。这是我的尝试

  1. 我的localhost中的代码相同,curl工作正常。
  2. 在我的服务器CentOs 6中(使用Cpanel Whm),我的目录结构如下所示

    • 的public_html
    • -YiiWebsiteFolder
    • -curl_test.php
  3. 我可以curl运行curl_test.phpcurl_test.php中的相同网址,没有问题,它运行正常。它甚至可以将curl放在YiiWebsiteFolder中,因此问题不会是权限。

    但是如果我运行相同的代码通过Yii(YiiWebsiteFolder)调用'Couldn't resolve host ...'.,在Yii控制器和操作中运行它,会引发错误mydomain.com/index.php/test/myaction (我的网址重写非常正常,我的网站网址看起来像“Yii”)

    所以我猜到原因可能是main.php,而不是DNS problem就像某些帮助主题所说的那样。

    http://forums.cpanel.net/f34/file_get_contents-couldnt-resolve-host-name-120065.html

    Couldn't resolve host and DNS Resolution failed

    本地计算机和我的服务器的Yii config etc/resolv.conf文件都是相同的。

    编辑:我发现这个人和我一样有同样的问题

    cURL doesn't work when it's used in a PHP application and running > through a web browser

      

    cURL在PHP应用程序中使用并运行时不起作用   通过网络浏览器。但是,运行时与cURL相同的PHP页面   通过终端,做它应该做的事情并取得它   我想要的信息

    但他发现问题是DAEMON阵列,但我不使用Apache DAEMON(即使我不确定它是什么)。

    我已经尝试了所有可能的解决方案,例如重新启动我的网络和我的apache,以便在启动时更改顺序,修改{{1}} /(添加或删除12.0.0.1并尝试使用公共DNS)

      

    服务网络停止

         

    服务网络启动

         

    服务网络重启

         

    / sbin / service httpd stop

         

    / sbin / service httpd start

    我花了很多时间来解决问题,但根本没有成功。 任何帮助都非常感谢。

1 个答案:

答案 0 :(得分:1)

这并不能解决您的具体问题,但我认为我应该发帖说我遇到了同样的问题,当PHP脚本从Web浏览器运行时,PHP cURL无法解析任何主机名,但是同样的脚本从终端命令行工作正常(即cURL解析主机名返回预期的响应)。在我的情况下,它解决了以下问题:

/ sbin / service httpd stop

/ sbin / service httpd start