使用 file_get_contents() 时 HTTP 请求失败
尽管网站在浏览器中正常加载,但使用 file_get_contents() 时遇到 500 错误,请考虑以下事项:
在这种特定情况下,尝试使用 PHP 中的 file_get_contents() 从网站检索内容时遇到错误。错误日志显示“500 内部服务器错误”消息,而通过浏览器访问网站时没有问题。
解决此问题的可能解决方案是修改代码以包含其他请求标头。通过设置自定义“User-Agent”标头,您可以将您的请求伪装成典型的浏览器。这可能有助于解决使用 file_get_contents() 时遇到的 HTTP 错误:
<code class="php">$opts = array('http'=>array('header' => "User-Agent:MyAgent/1.0\r\n")); $context = stream_context_create($opts); $header = file_get_contents('https://www.example.com',false,$context);</code>
如果此修改不能缓解问题,则可能值得考虑从安全网站访问内容时遇到限制的可能性(HTTPS )使用 file_get_contents()。
以上是为什么网站正常加载时 `file_get_contents()` 会失败并出现 500 错误?的详细内容。更多信息请关注PHP中文网其他相关文章!