我最近将一个应用程序部署到共享主机(webfaction),并且由于没有明显的原因,我的网站根本不会加载(它一直工作到今天)。
这是一个django应用程序,但django.log甚至没有创建;唯一的线索是,在其中一个日志中,我收到错误消息:“脚本标题过早结束”,将我的wsgi文件标识为源。
我尝试将日志记录添加到我的wsgi文件中,但是我找不到为其创建的任何日志。有没有推荐的方法来调试此错误?我正在撕开我的头发。
我的WSGI文件:
import os
import sys
from django.core.handlers.wsgi import WSGIHandler
import logging
logger = logging.getLogger(__name__)
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
os.environ['CELERY_LOADER'] = 'django'
virtenv = os.path.expanduser("~/webapps/django/oneclickcosvirt/")
activate_this = virtenv + "bin/activate_this.py"
execfile(activate_this, dict(__file__=activate_this))
# if 'VIRTUAL_ENV' not in os.environ:
# os.environ['VIRTUAL_ENV'] = virtenv
sys.path.append(os.path.dirname(virtenv+'oneclickcos/'))
logger.debug('About to run WSGIHandler')
try:
application = WSGIHandler()
except (Exception,), e:
logger.debug('Exception starting wsgihandler: %s' % e)
raise e
答案 0 :(得分: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脚本执行,那么也会出现此错误消息。
希望它会有所帮助