您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Nginx error: (13: Permission denied)连接到上游时

Nginx error: (13: Permission denied)连接到上游时

发生权限问题是因为uwsgi将/tmp/uwsgi.sock的所有权和权限重置为755,并且每次uwsgi启动时用户都运行uwsgi。

解决问题的正确方法是使uwsgi更改/tmp/uwsgi.sock的所有权和/或权限,以便Nginx可以写入此套接字。因此,有三种可能的解决方案。

uwsgi -s /tmp/uwsgi.sock -w my_app:app --uid www-data --gid www-data
uwsgi -s /tmp/uwsgi.sock -w my_app:app --chown-socket=www-data:www-data
uwsgi -s /tmp/uwsgi.sock -w my_app:app --chmod-socket=666

我更喜欢第一种方法,因为它不会让uwsgi以root身份运行。

前两个命令需要以root用户身份运行。第三个命令不需要以root用户身份运行。

一个命令使uwsgi以www-data用户身份运行。第二和第三个命令使uwsgi以运行该命令的实际用户身份运行。

一个和第二个命令仅允许www数据用户写入套接字。第三个命令允许任何用户写入套接字。

我更喜欢第一种方法,因为它不会让uwsgi以root用户身份运行,并且不会使套接文件成为世界可写的。

其他 2022/1/1 18:17:12 有320人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶