【问题标题】:uwsgi socket permissionsuwsgi 套接字权限
【发布时间】:2012-09-28 12:31:42
【问题描述】:

我在 Ubuntu 12 上运行 uwsgi 时遇到了一些权限问题。这是我的 ini 文件:

[uwsgi]
project = djangorpoject
base_dir = /home/mysite/mysite.com

uid = www-data
gid = www-data
plugins = http,python

processes = 4
harakiri = 60
reload-mercy = 8
cpu-affinity = 1
max-requests =  2000
limit-as = 512
reload-on-as = 256
reload-on-rss = 192
no-orphans = True
#vacuum = True
master = True

logto = /var/log/uwsgi/%n.log
#daemonize = /var/log/uwsgi/%n.log
#catch-exceptions
disable-logging

virtualenv = %(base_dir)/venv
chdir = %(base_dir)
module = %(project).wsgi:application

socket = /run/uwsgi/%n.sock
chmod-socket = 666
chown-socket = www-data:www-data

如您所见,我在套接字文件上运行 chmod 和 chown。当我尝试加载我的网站时,我收到以下错误:

bind(): Permission denied [socket.c line 107]

如果我运行它就会消失

sudo chown -R www-data:www-data /run/uwsgi

但是当我重新启动服务器时,这种情况不会持续存在。我假设这是因为 uwsgi 在启动时重新创建文件夹?有什么办法可以将权限永久应用到套接字?

【问题讨论】:

    标签: uwsgi


    【解决方案1】:

    /runtmpfs,这意味着它在重新启动后不会持续存在。创建一个目录/var/uwsgi 而不是持久化。

    【讨论】:

    • 我试过这个,但它似乎也不起作用。 /var/run 似乎与 /run 相同,它们是符号链接的吗?
    • @Hanpan,你说得对,我应该检查一下。我已经编辑了答案。
    猜你喜欢
    • 2014-03-31
    • 2017-05-30
    • 2016-05-25
    • 2019-10-28
    • 1970-01-01
    • 2013-09-04
    • 2011-01-20
    • 2014-02-16
    • 2015-12-29
    相关资源
    最近更新 更多