脚本标题过早结束

我经常在我的apache日志中得到一个“脚本标题提前结束”错误,导致内部500错误。 我明白错误信息是什么意思 – 我的应用程序没有给浏览器所需的标题(也许什么也没有),但奇怪的是,这并不是一直发生的。 实际上,这通常发生在我部署后的前几次。 这可能是一个记忆问题? 有谁知道如何解决这个问题? 我的apache日志并没有告诉我任何东西。

我在ubuntu上运行一个使用Rails框架的ruby站点。

谢谢!

如果在部署之后发生这种情况,可能意味着Ruby进程正在重新启动,尚未准备好提供页面。 Apache只会给它一定的时间来为每个页面服务,然后它会计时并提供500个。一旦Ruby进程“升温”,那么一切都会好起来的。

你的Apache访问日志应该告诉你失败的请求花了多长时间。 我的猜测是,它们将与Apacheconfiguration的超时一样; 例如: http : //httpd.apache.org/mod_fcgid/mod/mod_fcgid.html#fcgidconnecttimeout

你在运行什么脚本,Perl?

您可以尝试启用警告,并使用鲤鱼来捕获这样的错误:

#!/usr/bin/perl -w use strict; use CGI::Carp qw/fatalsToBrowser/;