Nginx的Permission denied错误
来源:互联网 发布:ubuntu桌面菜单不见了 编辑:程序博客网 时间:2024/05/01 14:19
Nginx的Permission denied错误
环境: CentOS7
问题描述
今天搭建了nginx+uwsgi+django的环境,之后通过浏览器访问遇到下面问题:
2017/03/31 19:38:13 [crit] 191969#191969: *5 connect() to 127.0.0.1:8000 failed (13: Permission denied) while connecting to upstream, client: 192.168.0.10, server: localhost, request: “GET /admin HTTP/1.1”, upstream: “uwsgi://127.0.0.1:8000”, host: “192.168.0.20:8080”
上面来自/var/log/nginx/error.log。
原因
通过ps命令查看nginx进程为用户nginx,而uwsgi进程为用户root。估计是权限不一致导致nginx无法访问uwsgi进程(socket方式通信)。
所以修改nginx的配置文件/etc/nginx/nginx.conf,把user选项从nginx改成root。之后执行重启命令systemctl restart nginx
。
再次打开浏览器访问django,发现仍然不行。(+﹏+)~狂晕
上网继续调查,发现还有一个原因可能引起这个问题,那就是selinux,执行下面命令:
setsebool -P httpd_can_network_connect 1
然后重新访问浏览器,发现可以打开页面了。如果还不行就彻底一些,关闭selinux:
setenforce 0
O(∩_∩)O哈哈~,终于搞定了。
One More Thing
在stackoverflow网站看到一个回复是说使用root运行uwsgi还是不太好的,建议使用一个和nginx相同的普通账户运行。例如:
uwsgi -s /tmp/uwsgi.sock -w my_app:app --uid www-data --gid www-data
@完
参考:
- http://www.cnblogs.com/zengjfgit/p/5910345.html
- http://blog.csdn.net/scorpio3k/article/details/48847611
- http://stackoverflow.com/questions/21820444/nginx-error-13-permission-denied-while-connecting-to-upstream
- Nginx的Permission denied错误
- nginx 13: Permission denied 错误
- nginx 502错误 failed (13: Permission denied)
- nginx报403错误(13:Permission denied)
- Nginx Permission denied
- nginx permission denied
- nginx + passenger 出现 Cannot stat .../config.ru': Permission denied 的错误的解决办法
- nginx + passenger 出现 Cannot stat .../config.ru': Permission denied 的错误的解决办法
- 关于Nginx open() “/xxx/xxxx(dir path)” failed (13: Permission denied)的错误
- nginx open() "" failed (13: Permission denied), client:错误解决办法
- Nginx错误:(13: Permission denied) while reading upstream
- php-fpm nginx配置文件 处理 Permission denied 错误
- HDFS客户端的权限错误:Permission denied
- HDFS客户端的权限错误:Permission denied
- HDFS客户端的权限错误:Permission denied
- HDFS客户端的权限错误:Permission denied
- HDFS客户端的权限错误:Permission denied
- HDFS客户端的权限错误:Permission denied
- Project Euler Problem 26 Reciprocal cycles
- State Threads 回调终结者(ST线程库)
- python 去除字符串某个字符
- SQL语言基础及数据定义功能
- 如果你还是“程序员”,我劝你别创业!
- Nginx的Permission denied错误
- Spark中parallelize函数和makeRDD函数的区别
- editText限制输入的5种方法
- 使用RAP搭建前端Mock Server
- Jmeter组件开发概述
- angularJS添加事件监听
- 修改每个nodemanager 可分配的内存 yarn.nodemanager.resource.memory-mb
- 【序列】分片
- 注解方式实现aop权限管理