78模板网分享cms建站教程,提供网站模板、网站插件、办公模板等模板教程免费学习,找模板教程就上78模板网!

php出现failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found错误页的解决办法

php出现failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found错误页的解决办法

今天在处理缩略图裁剪代码的时候偶现一条错误“failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found”,最开始以为是内存不足,后来百度一下不是这个问题。大概的原因是处理缩略图裁剪的时候,发现链接出现错误,因为测试站开启了网站密码这就导致查询不到http状态码,所以这个时候就出现了这个错误提示。

我再用的是php7.4和8.0,其中8.0出现错误提示,那么如何解决failed-to-open-stream:-HTTP-request-failed的错误呢按照百度的教程有两种完美的解决办法。

php出现failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found错误页的解决办法 第1张

第一种方法:

利用php伪造user_agent(伪造user agent的代码的位置)?

file_get_contents伪造user_agent 方法如下:

点击复制代码 PHP

ini_set('user_agent','Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727;)');

curl伪造user_agent的方法:

点击复制代码 PHP

curl_setopt($c, CURLOPT_USERAGENT,'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727;)');ini_set('user_agent','Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727;)');$html=file_get_contents($url);

 可能有些看不懂哈,没事,我也看不懂,但是看起来很厉害的样子有没有?既然看不懂就越过吧,毕竟函数代码不是都写成一个样子的,改错了可能导致更大的错误,那么可以试试学习下面的方法。

第二种方法:

解决failed-to-open-stream:-HTTP-request-failed的问题。

打开服务器php配置文件php.ini(别问我这个文件在哪)找到这两个选项:allow_url_fopen =on(表示可以通过url打开远程文件,如果是off修改成on),user_agent="PHP"(表示通过哪种脚本访问网络,默认前面有个 " ; " 去掉即可。)然后重载或者重启php服务器即可,如果是宝塔服务器,直接在软件管理,找到站点所用的php版本,修改配置,搜索上面选项,做出修改保存,重载服务就可以了。

部分网友可能还是会有这个警告信息,想用完美的解决还差一步,还得设置php.ini里面的user_agent,php默认的user_agent是PHP,我们把它改成Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)来模拟浏览器就可以了

点击复制代码 PHP

user_agent=”Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)”

我是没用修改这个,仅仅是部分会出现,我只是把前面的;分号取消了然后网站就正常的,当然我也并不清楚这个是我主题的问题还是裁剪代码的问题,如果您觉得费事,可以考虑不开启缩略图裁剪,在zbp1.7版本之后缩略图裁剪用的是官方自带的代码,不是之前网上找的,所以可能是php兼容性问题吧,搞不懂,毕竟不会PHP

本文链接:http://78moban.cn/post/8999.html

版权声明:站内所有文章皆来自网络转载,只供模板演示使用,并无任何其它意义!

联系技术
文章删除 友链合作 技术交流群
1050177837
公众号
公众号
公众号
返回顶部