[踩坑] PHP file_get_contents() returns "failed to open stream: HTTP request failed!"

By karp 739 Views 3 MIN READ 0 Comments

从此拒绝再使用 file_get_contents 请求网络地址.

PHP file_get_contents() returns "failed to open stream: HTTP request failed!"

今天你发现通服务下 php_error.log 大量抛出错误

[21-Aug-2023 16:59:42 Asia/Shanghai] PHP Warning:  file_get_contents(http://127.0.0.1?xxx): failed to open stream: HTTP request failed! in /data/1.php on line 36

本来想着是 ulimit 被限制了. ulimit -n 输出 :102400 已经非常大了. 还增加了访问服务器的进程.
but 并解决不了问题. 最后只能替换掉 file_get_contents 方法 使用 curl

替换后 问题得到解决了.

相关内容很早前就有说明, 具体原因不详 应该就是文件打开受限制了. 没权限设置无限大, 那就只能平替

https://stackoverflow.com/questions/697472/php-file-get-contents-returns-failed-to-open-stream-http-request-failed

本文由 karp 原创

采用 CC BY-NC-SA 4.0 协议进行许可

转载请注明出处:https://www.ikarp.top/index.php/archives/600.html

标签: php

0 评论