我简单的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
),没有发现主要差异。
我剩下的一个想法是,我正在使用针对Python 2.7.1构建的Ubuntu 12.04的mod_wsgi(libapache2-mod-wsgi
3.3-4build1);我有Python 2.7.3。Django是1.6,比Ubuntu
Precise版本更新。我犹豫要从源代码开始构建软件包,因为清理起来非常困难,而且这些更改似乎是次要的版本更改…
感谢您的帮助。
(作为参考,这是Apache config和WSGI应用程序)
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
WSGIScriptAlias /rz /usr/local/share/rz/rz.wsgi
...
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)
def _start_response(status, headers, *args):
pprint.pprint(('RESPONSE', status, headers), stream=errors)
return start_response(status, headers, *args)
return self.__application(environ, _start_response)
application = LoggingMiddleware(django.core.handlers.wsgi.WSGIHandler())
像这样将ALLOWED_HOSTS设置添加到您的settings.py中…
ALLOWED_HOSTS = [
'.example.com', # Allow domain and subdomains
'.example.com.', # Also allow FQDN and subdomains
]
我遇到了同样的问题,并在文档中找到了答案
更新:django 1.6文档不再在线,我更新了链接以转到django 1.7文档进行ALLOWED_HOSTS
设置。
我正在尝试发布我的网站,我配置了所有设置(nginx 这个设置效果很好 然而,当我编辑调试时=True到False 我在浏览器上遇到这个错误,请求错误(400) 我也试过这些设置 (在发布这个问题之前,我检查了这个答案,当DEBUG=False时,Django给出了错误的请求(400))
我目前将seetings文件配置为使用memcache缓存。 虽然网站运行完美,但我看到调试行,如: 因此,我感兴趣的是学习如何解决这个问题,以及如何实际测试是否正在使用后端缓存。它目前已实现用于所有页面。
在尝试部署我使用django开发服务器开发的博客时收到400错误后,我开始了一个新的测试项目(使用start project,不做其他任何事情——只是在这里和那里进行一点配置)-尽可能少,以保持尽可能简单。 当我执行“manage.py runserver”时,它会显示一个页面,说我看到了这个,因为我的设置中有“DEBUG=True”。 到现在为止,一直都还不错。没有错误。 但是如果我使用uWSG
当我将debug设置为false时,我遇到了“错误请求400”(生产服务器)的问题。我使用cookiecutter和Django 1.8。我设置了-没有任何结果。 在日志中,我有一条消息: 我尝试了django文档中的代码,也没有成功:
我有一个基于Spring Web model view controller(MVC)框架的项目。Spring Web模型-视图-控制器(MVC)框架的版本是3.2.8 我有这个控制器 这个URL一切正常:
目前从Angular JS controller中,我试图将JSON数据发送到后端服务。但是我有400个错误的请求错误。 在Controller中,我试图通过http服务发送数据,如下所示: