在我的本地 XAMPP 服务器上禁用输出缓冲
由于某种原因,我的 XAMPP 服务器正在缓冲 PHP 的输出。我想让它随波逐流地吐出来。有人知道我需要更改哪些设置才能实现此目的吗?
For some reason my XAMPP server is buffering the output of my PHP. I want it to spit it out as it goes. Anyone any ideas which settings I need to change to achieve this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
默认情况下,XAMPP 似乎将
output_buffering
设置为 4096。 (因此内容以 4K 块的形式提供 - 可能会带来性能优势。尽管如果部署在禁用此功能的服务器上(顺便说一下,这是 PHP 默认值),这可能会导致意外错误(例如“标头已发送”等)。)在 php.ini 中:
设置为:
并重新启动服务器。
XAMPP appears to set
output_buffering
to 4096 by default. (So content is served in 4K chunks - a possible performance benefit. Although this can lead to unexpected bugs (eg. "headers already sent" etc.) if deploying on a server where this is disabled, which incidentally is the PHP default.)In
php.ini
:Set to:
And restart your server.
查看
ob_end_flush()
,手册中关于输出控制的章节 - 特别是php.ini 设置。当然,如果您只是得到一个空白页,请检查您的错误报告设置 - 很可能错误会停止脚本,并且错误报告关闭后您什么也看不到。
Check out
ob_end_flush()
, the manual's chapter on output control - specifically the php.ini settings.Of course if you're just getting a blank page, check your error reporting settings - it's very possible an error halts the script, and with error reporting off you see nothing.
如果您在 Xdebug 中调试它并检查浏览器中的输出,可能有几个原因。
1)PHP
2)阿帕奇(网络服务器)
3) Web 浏览器
阅读以下内容以获取详细信息:
http://muzso.hu/ 2008/02/19/php-输出缓冲
if you are debugging this in Xdebug and checking the output in the browser there might several reason for that.
1) php
2) apache (web server)
3) Web browser
Read this for the detailed information:
http://muzso.hu/2008/02/19/php-output-buffering