gpt4 book ai didi

python - Django - 标题之前的脚本输出结束

转载 作者:太空狗 更新时间:2023-10-29 17:59:30 26 4
gpt4 key购买 nike

基本 hello.wsgi 工作正常。其他 django 应用程序也完美地工作与完全相同的 virtualenv 版本。

mod_wsgi 挂起约 10 分钟 (!!!),我看不出任何问题(日志级别调试):

[Tue Mar 25 23:11:08.878578 2014] [:info] [pid 4719:tid 140720591648640] mod_wsgi (pid=4719): Attach interpreter ''.
[Tue Mar 25 23:11:08.879171 2014] [:info] [pid 4717:tid 140720591648640] mod_wsgi (pid=4717): Attach interpreter ''.
[Tue Mar 25 23:11:10.891348 2014] [authz_core:debug] [pid 4730:tid 140720477226752] mod_authz_core.c(802): [client 127.0.0.1:40844] AH01626: authorization result of Require all granted: granted
[Tue Mar 25 23:11:10.891391 2014] [authz_core:debug] [pid 4730:tid 140720477226752] mod_authz_core.c(802): [client 127.0.0.1:40844] AH01626: authorization result of <RequireAny>: granted
[Tue Mar 25 23:11:10.891489 2014] [authz_core:debug] [pid 4730:tid 140720477226752] mod_authz_core.c(802): [client 127.0.0.1:40844] AH01626: authorization result of Require all granted: granted
[Tue Mar 25 23:11:10.891497 2014] [authz_core:debug] [pid 4730:tid 140720477226752] mod_authz_core.c(802): [client 127.0.0.1:40844] AH01626: authorization result of <RequireAny>: granted
[Tue Mar 25 23:11:10.903921 2014] [:info] [pid 4719:tid 140720469034752] mod_wsgi (pid=4719): Create interpreter 'prj-dev|'.
[Tue Mar 25 23:11:10.905378 2014] [:info] [pid 4719:tid 140720469034752] [remote 127.0.0.1:57616] mod_wsgi (pid=4719, process='prj.project-dev', application='prj-dev|'): Loading WSGI script '/var/www/prj.project-dev/venv/www/public/index.wsgi'.
[Tue Mar 25 23:11:12.014799 2014] [:error] [pid 4719:tid 140720469034752] /usr/lib/python2.7/dist-packages/numpy/oldnumeric/__init__.py:11: ModuleDeprecationWarning: The oldnumeric module will be dropped in Numpy 1.9
[Tue Mar 25 23:11:12.014843 2014] [:error] [pid 4719:tid 140720469034752] warnings.warn(_msg, ModuleDeprecationWarning)
[Tue Mar 25 23:11:12.014846 2014] [:error] [pid 4719:tid 140720469034752]
[Tue Mar 25 23:16:11.888631 2014] [:info] [pid 4719:tid 140720485820160] mod_wsgi (pid=4719): Daemon process deadlock timer expired, stopping process 'prj.project-dev'.
[Tue Mar 25 23:16:11.888761 2014] [:info] [pid 4719:tid 140720591648640] mod_wsgi (pid=4719): Shutdown requested 'prj.project-dev'.
[Tue Mar 25 23:16:16.889065 2014] [:info] [pid 4719:tid 140720121513728] mod_wsgi (pid=4719): Aborting process 'prj.project-dev'.
[Tue Mar 25 23:16:16.895499 2014] [core:error] [pid 4730:tid 140720477226752] [client 127.0.0.1:40844] End of script output before headers: index.wsgi
[Tue Mar 25 23:16:17.160980 2014] [:info] [pid 5295:tid 140720591648640] mod_wsgi (pid=5295): Attach interpreter ''.

Apache 配置也不包含任何有趣的内容。相同的配置适用于其他服务器。

<VirtualHost *:80>
ServerName prj-dev
ServerAdmin admin@force.fm
DocumentRoot "/var/www/prj.project-dev/venv/www/public"
ErrorLog /var/log/apache2/prj.project-dev/error_log
CustomLog /var/log/apache2/prj.project-dev/access_log common

Alias /media/ /var/www/prj.project-dev/venv/prj/prj/media/
Alias /static/ /var/www/prj.project-dev/venv/prj/prj/static/
Alias /usermedia/ /var/www/prj.project-dev/venv/prj/prj/usermedia/

<Directory /var/www/prj.project-dev/venv/prj/prj/usermedia>
Order deny,allow
Allow from all
</Directory>

<Directory /var/www/prj.project-dev/venv/prj/prj/media>
Order deny,allow
Allow from all
</Directory>

<Directory /var/www/prj.project-dev/venv/prj/prj/static>
Order deny,allow
Allow from all
</Directory>

WSGIDaemonProcess prj.project-dev user=user group=user processes=2 threads=2 display-name=%{GROUP}
WSGIProcessGroup prj.project-dev
WSGIScriptAlias / /var/www/prj.project-dev/venv/www/public/index.wsgi

XSendFile on

<Directory /var/www/prj.project-dev/venv/www/public>
Order deny,allow
Allow from all
</Directory>

</VirtualHost>

wsgi 中没什么有趣的:

import os, sys

activate_this = '/var/www/prj.project-dev/venv/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))
sys.path = [
'/var/www/prj.project-dev/venv/lib/python2.7/site-packages/',
'/var/www/prj.project-dev/venv/prj/',
'/var/www/prj.project-dev/venv/',
] + sys.path

os.environ['DJANGO_SETTINGS_MODULE'] = 'prj.settings'

import django.core.handlers.wsgi
#from raven.contrib.django.middleware.wsgi import Sentry

application = django.core.handlers.wsgi.WSGIHandler()
#application = Sentry(django.core.handlers.wsgi.WSGIHandler())

我的问题是:我怎样才能得到它挂起的真正原因?

最佳答案

这包含在 mod_wsgi 文档中。

http://code.google.com/p/modwsgi/wiki/ApplicationIssues#Python_Simplified_GIL_State_API

简而言之,您可能正在使用未实现的 Python 扩展模块,无法在 Python 子解释器中正常工作。在执行阻塞操作时,那个或扩展模块没有正确释放 GIL。两者都可能导致解释器死锁。

使用文档中的解决方案,看看是否有帮助。

关于python - Django - 标题之前的脚本输出结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22644384/

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