nginx + uwsgi + django 打开 uwsgi_params 失败(13:权限被拒绝)
nginx + uwsgi + django open uwsgi_params failed (13: permission denied)
我试着按照这里的 nginx 文档 https://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html。但停留在 Configure nginx for your site
。我重新启动了 nginx,它说“nginx: [emerg] open() "/home/hanys/oligoweb/uwsgi_params" failed (13: Permission denied) in /etc/nginx/sites-enabled/oligoweb.conf:19
”。
我的 site.ini:
[uwsgi]
chdir = /home/hanys/oligoweb/
module = oligoweb.wsgi
home = /home/hanys/.virtualenv/oligo-env
master = true
processes = 10
socket = /home/hanys/oligoweb/oligoweb.sock
chmod-socket = 666
vacuum = true
daemonize = /home/hanys/uwsgi-emperor.log
uid = www-data
gid = www-data
我的 site.conf 在 /etc/nginx/sites-available/
upstream django {
server unix:///home/hanys/oligoweb/oligoweb.sock;
}
server {
listen 80;
server_name IP address here;
charset utf-8;
# max upload size
client_max_body_size 75M;
# Django media and static files
location /static {
alias /home/hanys/oligoweb/static;
}
# Send all non-media requests to the Django server.
location / {
uwsgi_pass django;
include /home/hanys/oligoweb/uwsgi_params;
}
}
uwsgi_params 拥有 664 权限。我试过 chmod 777 uwsgi_params 但它没有用。
任何帮助将不胜感激!
一般来说,uwsgi_params
已经随你的 Nginx 一起提供了,所以你只需要 include uwsgi_params
(所以它指的是 /etc/nginx/uwsgi_params
或类似的)。
如果不是这种情况,您可能还需要授予 Nginx 足够的权限来读取文件所在的目录结构,而不仅仅是文件本身。
我试着按照这里的 nginx 文档 https://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html。但停留在 Configure nginx for your site
。我重新启动了 nginx,它说“nginx: [emerg] open() "/home/hanys/oligoweb/uwsgi_params" failed (13: Permission denied) in /etc/nginx/sites-enabled/oligoweb.conf:19
”。
我的 site.ini:
[uwsgi]
chdir = /home/hanys/oligoweb/
module = oligoweb.wsgi
home = /home/hanys/.virtualenv/oligo-env
master = true
processes = 10
socket = /home/hanys/oligoweb/oligoweb.sock
chmod-socket = 666
vacuum = true
daemonize = /home/hanys/uwsgi-emperor.log
uid = www-data
gid = www-data
我的 site.conf 在 /etc/nginx/sites-available/
upstream django {
server unix:///home/hanys/oligoweb/oligoweb.sock;
}
server {
listen 80;
server_name IP address here;
charset utf-8;
# max upload size
client_max_body_size 75M;
# Django media and static files
location /static {
alias /home/hanys/oligoweb/static;
}
# Send all non-media requests to the Django server.
location / {
uwsgi_pass django;
include /home/hanys/oligoweb/uwsgi_params;
}
}
uwsgi_params 拥有 664 权限。我试过 chmod 777 uwsgi_params 但它没有用。 任何帮助将不胜感激!
一般来说,uwsgi_params
已经随你的 Nginx 一起提供了,所以你只需要 include uwsgi_params
(所以它指的是 /etc/nginx/uwsgi_params
或类似的)。
如果不是这种情况,您可能还需要授予 Nginx 足够的权限来读取文件所在的目录结构,而不仅仅是文件本身。