致命的Python错误:PyEval_AcquireThread

时间:2013-08-02 09:27:55

标签: django apache2 mod-wsgi

我刚刚在线发布django应用程序,我在错误日志中收到此错误

Fatal Python error: PyEval_AcquireThread: NULL new thread state

我在网上看到了一些类似的问题,但他们没有解释这个错误。

3 个答案:

答案 0 :(得分:8)

如果同时启用了apache mod_wsgimod_python,则会出现此问题。 尝试

sudo a2dismod python
sudo service apache2 restart

答案 1 :(得分:4)

这往往表明你的mod_wsgi是针对不同的Python版本和/或不同的Python安装而编译的,而不是它在运行时尝试使用的Python虚拟环境或Python安装。

换句话说,您正在混合来自不同Python安装的已编译共享库和扩展模块。这可能会导致各种各样的问题。

完成检查:

了解你的mod_wsgi是如何构建的,并验证它是你期望的那样。

答案 2 :(得分:0)

在我的情况下,它是Django或Flask项目所在目录的权限。它们是从root创建的,因此在我的情况下我将它们更改为www-data。