使用uwsgi启动django代码,而后打开浏览器输入http://localhost:8000/admin。后台出现下面错误nginx
invalid request block size: 21573 (max 4096)...skip
用nginx来把请求发送给uwsgi。uwsgi被配置成使用socket方式(为tcp协议)进行通讯。若是打开浏览器访问uwsgi指定的端口,那么浏览器请求uwsgi的方式为http协议,而不是socket方式。因此就致使uwsgi的log文件中打出上面的错误信息。django
解决方法浏览器
uwsgi --http :8000 --wsgi-file application.py
uwsgi --ini /patch/to/uwsgi.ini
注意:以上两种方式启动不能混用,例如使用uwsgi --http :8000 --ini /path/to/uwsgi.ini会形成端口已经被占用的错误:app
uWSGI http bound on :8000 fd 3 probably another instance of uWSGI is running on the same address (:8000). bind(): Address already in use [core/socket.c line 769]