【问题标题】:php http extension installed properly but never worksphp http 扩展安装正确,但从不工作
【发布时间】:2014-10-01 03:11:10
【问题描述】:

我想要做的是使用php发出http请求,这样我安装http扩展似乎成功,因为如果我运行phpinfo(),我可以清楚地http扩展。

但这里的问题是 http 函数永远无法工作,即使对于最简单的函数也是如此。

例如,如果我尝试了以下两种情况:

  1. 回声 1; echo http_request(HTTP_METH_GET,"http://www.google.com");

我会得到“1”作为回报。

  1. echo http_request(HTTP_METH_GET,"http://www.google.com"); 回声 1;

我什么都没得到。

有人可以帮我吗?我在这上面花了太多时间。 - 非常感谢。

【问题讨论】:

  • 请暂时打开您的错误报告 (php.net/manual/en/function.error-reporting.php),以便我们查看错误内容,或者找到您的 error_log (php.net/manual/en/function.error-log.php) 位置并找到错误。您也可以尝试 curl 功能或 fopen(假设您有权使用它打开 URL?)?
  • @Hans 这很奇怪。 - 只是我在这里发布,似乎 http_request 是一个“无限循环”,因为“echo 1”在第二种情况下永远不会执行。但对于第一种情况,我可以得到“echo 1”。
  • @Hans 在 php 代码中添加“error_reporting”后,我还没有看到任何报告。我需要去文件系统中的其他地方进行报告吗?谢谢
  • google.com"); if (extension_loaded ('http') == TRUE){ echo 1; } else { echo 0; } } catch (Exception $ex) { echo $ex; } ?>
  • @Hans 以上是我的代码,它没有打印任何东西

标签: php http


【解决方案1】:

请检查你的php扩展库中是否有http.so文件 通常它位于 /usr/lib/php/extensions/no-debug-no-zts-。

如果有,在 /etc/ 中添加一个 php.ini 文件

还有一行 扩展=http.so

我认为应该没有问题。

【讨论】:

    【解决方案2】:

    我认为您只需要在 php.ini 文件中进行一些更改

    enable_dl = Off 更改为enable_dl = On

    也看看here

    【讨论】:

      【解决方案3】:

      可能你已经安装了 pecl_http 的 2.* 版本 这与版本 1.* 非常不同且不兼容。

      附言您可以在 phpinfo() 输出中检查版本

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-02-27
        • 2017-05-13
        • 1970-01-01
        • 1970-01-01
        • 2013-09-03
        • 2014-06-06
        • 2020-05-09
        • 1970-01-01
        相关资源
        最近更新 更多