2012-03-26 86 views
8

我最近部署了一个应用程序到共享主机(webfaction),并没有明显的原因,我的网站将不会加载(它一直工作到今天)。调试“脚本头文件过早结束” - WSGI/Django

这是一个django应用程序,但django.log甚至没有创建;唯一的线索是在其中一个日志中,我收到错误消息:“脚本头文件的提前结束”,将我的wsgi文件标识为源文件。

我试图添加日志记录到我的wsgi文件,但我找不到为它创建的任何日志。有没有推荐的方法来调试这个错误?我正在把我的头发撕掉。

我WSGI文件:

​​

回答

2

很难确定错误的确切原因没有网络服务器日志:

可能的解决方案: http://code.google.com/p/modwsgi/wiki/InstallationIssues#Multiple_Python_Versions

而且d http://code.google.com/p/modwsgi/wiki/FrequentlyAskedQuestions

问:为什么我会看到错误消息'脚本头文件过早结束' Apache错误日志。

答:如果使用守护进程模式,这是处理请求时mod_wsgi守护进程崩溃的症状。您可能还会看到消息“分段错误”。有关上述“分段错误”的问题,请参阅答案。

此错误消息也可能发生在您未正确配置Apache并且您的WSGI脚本文件正在作为CGI脚本执行的情况下发生。

希望它会帮助

+0

感谢您的支持。我最后通过安装gunicorn解决了这个问题。 – Marcin 2012-03-26 17:56:20

+3

我有同样的问题是由Python C扩展引起的。我在我的Apache配置文件中添加了“WSGIApplicationGroup%{GLOBAL}”,它解决了这个问题。该指令强制WSGI应用程序在第一个Python子解释器中运行,这消除了导致Apache重新启动进程的死锁。您可以在[Google Wiki](https://code.google.com/p/modwsgi/wiki/ApplicationIssues#Python_Simplified_GIL_State_API)上阅读更多内容 – Imraan 2013-05-09 09:19:33

+1

1.网络服务器日志不会有帮助,因为崩溃发生在任何有用之前获得日志记录,2.即使Apache配置“正确”,错误配置会导致记录错误,但不会发生segfaults,这会发生...... – Cerin 2013-12-11 14:27:54

相关问题