gpt4 book ai didi

php - 打开 Output_Buffering 会在随机页面上产生 404 错误

转载 作者:可可西里 更新时间:2023-10-31 23:36:25 25 4
gpt4 key购买 nike

我一直在 php 中使用 output_buffering(由 phpinfo() 确认),我刚刚发现打开它后,我会开始随机出现 404 错误在我的页面上,但页面内容加载正常,一切看起来都正常。

这只发生在我的生产站点上。 PHP 5.5.35、Apache/2.4.18 (Unix)。我不知道这个 404 是从哪里发送的。有没有人知道可能会发生什么,或者我可以在我的服务器上搜索什么来修复它?

如果相关的话,这些是我的响应 header :

Cache-Control:s-maxage=10
Cache-Control:no-cache, must-revalidate, max-age=0
Connection:Keep-Alive
Content-Encoding:gzip
Content-Length:13021
Content-Type:text/html; charset=UTF-8
Date:Fri, 02 Feb 2018 18:31:59 GMT
Expires:Wed, 11 Jan 1984 05:00:00 GMT
Keep-Alive:timeout=5, max=96
Server:Apache
Strict-Transport-Security:max-age=31536000; includeSubDomains; preload
Vary:Accept-Encoding
X-Powered-By:PHP/5.5.35

编辑:我发现这个问题只发生在我从 Wordpress 实例加载“最近的帖子”的页面上。删除这个小部件对我来说并不是一个真正的选择,但我认为设置 404 header 是有原因的。有什么想法吗?

最佳答案

我认为正在发生的事情是,在某些情况下,无论输出缓冲是打开还是关闭,您的代码都会发出 404;但是当输出缓冲关闭时,标题无法设置,因为它已经被写入生成这样的警告:

Warning: Cannot modify header information - headers already sent by (output started at /file.php:20) in /file.php on line 100

因此您只能在输出缓冲开启时看到 404,这使您能够在缓冲区写入输出之前的任何时间点设置 header 。

关于php - 打开 Output_Buffering 会在随机页面上产生 404 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48589244/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com