Python+uWSGI+nginx报错:Permission denied

 狠毒的水瓶_617_223_489_321 发布于 2022-11-01 05:00

折腾我好久了,老是提示没有权限:

-bash-4.1# > /var/log/nginx/error.log 
-bash-4.1# curl 127.0.0.1:8080

502 Bad Gateway

502 Bad Gateway


nginx/1.6.2
-bash-4.1# cat /var/log/nginx/error.log 2015/01/16 18:51:32 [crit] 4937#0: *1 connect() to 127.0.0.1:3301 failed (13: Permission denied) while connecting to upstream, client: 127.0.0.1, server: uwsgi_demo, request: "GET / HTTP/1.1", upstream: "uwsgi://127.0.0.1:3301", host: "127.0.0.1:8080"

测试程序:

def application(env, start_response):
    start_response('200 OK', [('Content-Type','text/html')])
    return ['Hello World']

测试程序目录情况:

-bash-4.1# ll
total 12
-rw-r--r--. 1 nginx nginx 139 Jan 16 15:34 app.py
-rw-r--r--. 1 root  root  136 Jan 16 18:37 demo.ini
-rw-r-----. 1 root  root   95 Jan 16 18:45 demo.log

uswgi 配置:

[uwsgi]
socket = 127.0.0.1:3031
wsgi-file = app.py

uid = nginx
gid = nginx
chmod-socket = 666

logto = demo.log
stats = 127.0.0.1:9191

nginx配制:

server {
    listen      8080;
    server_name uwsgi_demo;
    location / {
        include uwsgi_params;
        uwsgi_pass 127.0.0.1:3301; 
    }
}

进程情况:

-bash-4.1# ps aux | grep nginx
nginx     4819  0.0  0.3  53996  6852 pts/4    S+   18:48   0:00 uwsgi26 demo.ini
nginx     4821  0.0  0.3  73460  6048 pts/4    S+   18:48   0:00 uwsgi26 demo.ini
root      4935  0.0  0.1 141788  2568 ?        Ss   18:50   0:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
nginx     4937  0.0  0.1 142184  3292 ?        S    18:50   0:00 nginx: worker process                   
root      4939  0.0  0.0   6380   692 pts/2    S+   18:50   0:00 grep nginx
5 个回答
  • 遇到同样的问题,只需【关闭SELINUX】即可


    vi /etc/selinux/config
    
    #SELINUX=enforcing #注释掉
    
    #SELINUXTYPE=targeted #注释掉
    
    SELINUX=disabled #增加
    
    :wq! #保存退出
    
    setenforce 0 #使配置立即生效
    
    2022-11-12 01:49 回答
  • vi /etc/selinux/config
    修改這行SELINUX= enforcing
    改成 SELINUX=disabled
    再重開機 reboot

    2022-11-12 01:49 回答
  • connect 到本地端口失败,应该是被 SELinux 之类的拒绝了吧?设置正确的访问控制规则即可。

    2022-11-12 01:49 回答
  • 禁止访问应该是设置的根目录造成的

    2022-11-12 01:49 回答
  • 解决了,是nginx访问目录权限问题吧。不过不知道为什么用 yum 安装的nginx,如果把网站目录放在其他地方,总是提示禁止访问。所以只好自己编译安装nginx,另外存放网站的目录包括父目录,一定要有可执行权限。
    不知道是不是这样,反正现在可以了。

    2022-11-12 01:49 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有