[英]Django + uWsgi + Nginx No Database Data, Plus 502 Error on page change
[英]nginx django uwsgi page not found error
我试图在Nginx上设置uwsgi和Django,但显示找不到页面错误,错误日志为空。 我无法识别错误,因为错误日志为空。
错误日志/var/log/nginx/error.log
:
-rw-r - r-- 1 www-data root 0 Feb 26 12:31 error.log
uswgi运行正常,因为我在以下方法上测试了这个:
uwsgi --http:8080 --home / home / flybegins / python / django / venv / --chdir / home / flybegins / python / django / sample -w sample.wsgi
virtual host
server {
listen 80;
server_name test.aaaaaaa.com;
error_log /var/log/nginx/error.log
location /static/ {
root /home/flybegins/python/django/sample/
}
location / {
include uwsgi_params;
uwsgi_pass unix:/home/flybegins/python/django/sample/sample.sock;
} }
虚拟主机权限:
-rw-r--r-- 1 root root 333 Feb 27 08:54 test.aaaa.com
提前致谢!
你需要为uwsgi安装python插件
sudo apt-get install uwsgi-plugin-python
或者对于python 3
sudo apt-get install uwsgi-plugin-python3
您正在使用以下代码使用端口8080运行项目:
uwsgi --http :8080 --home /home/flybegins/python/django/venv/ --chdir /home/flybegins/python/django/sample -w sample.wsgi
并且您正尝试将NGINX绑定到使用此配置不存在的套接字文件:
location / {
include uwsgi_params;
uwsgi_pass unix:/home/flybegins/python/django/sample/sample.sock;
}
这就是为什么它不起作用。
我做了两个错误一个是nginx虚拟主机配置,另一个是套接字权限错误
uWSGI配置
[uwsgi]
project = prd
base = /home/flybegins/python/django
chdir = %(base)/%(project)
home = %(base)/venv
module = %(project).wsgi:application
master = true
processes = 5
gid = www-data
uid = www-data
socket = /var/uwsgi/%(project).sock
chmod-socket = 664
vacuum = true
要创建存在的套接字空间,您只需选择一个持久目录(例如,不是/ run或/ tmp)并使www-data(用户nginx运行为)所有者,如下所示:
$ sudo mkdir /var/uwsgi
$ sudo chown www-data:www-data /var/uwsgi
我的nginx虚拟主机配置
server {
listen 80;
server_name testserver1.com;
access_log /home/flybegins/log/python/testserver1.com/access.log;
error_log /home/flybegins/log/python/testserver1.com/error.log error;
location /static {
alias /home/flybegins/python/django/prd/static_files/;
}
location / {
include uwsgi_params;
uwsgi_pass unix:/var/uwsgi/prd.sock;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.