相关疑难解决方法(0)

调试Apache/Django/WSGI错误请求(400)错误

我的简单Django应用程序在调试模式下工作正常(manage.py runserver),并且在我的开发箱上的WSGI + Apache下工作,但当我推送到EC2时,我开始接收Bad Request (400)任何URL的间歇性(10-80%的时间)错误我试图查看(无论是在我的应用程序中还是在Django管理员中.

我在哪里可以找到关于此的调试信息?没有任何东西出现/var/log/apache2/error.log,即使有LogLevel=info.我检查了版本,记录了Request环境(参见ModWSGI Debugging Tips),看不出有什么重大差异.

剩下的一个想法是,我正在使用Ubuntu 12.04(libapache2-mod-wsgi 3.3-4build1)的mod_wsgi,它是针对Python 2.7.1构建的; 我有Python 2.7.3.Django是1.6,比Ubuntu Precise版本更新.我不愿意从源代码开始构建软件包,因为它很难清理,这看起来像是次要的版本更改......

谢谢您的帮助.

(供参考,这里是Apache配置和WSGI应用程序)

Apache配置(000默认)

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www
    WSGIScriptAlias /rz /usr/local/share/rz/rz.wsgi
    ...
Run Code Online (Sandbox Code Playgroud)

rz.WSGI app

import os
import sys
import django.core.handlers.wsgi
import pprint

path = '/usr/local/share/rz'
if path not in sys.path:
    sys.path.insert(0, path)

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

class LoggingMiddleware:
    def __init__(self, application):
        self.__application = application

    def __call__(self, environ, start_response):
        errors = environ['wsgi.errors']
        pprint.pprint(('REQUEST', environ), stream=errors) …
Run Code Online (Sandbox Code Playgroud)

python apache django mod-wsgi django-wsgi

61
推荐指数
2
解决办法
3万
查看次数

标签 统计

apache ×1

django ×1

django-wsgi ×1

mod-wsgi ×1

python ×1