我使用以皇帝模式运行的uwsgi在一台服务器上为多个Django应用程序提供服务。 因此,对于每个项目我都有一个像这样的自己的configuration文件:
<uwsgi> <master>true</master> <processes>1</processes> <vaccum>true</vaccum> <chmod-socket>666</chmod-socket> <socket>/tmp/%n.sock</socket> <uid>www-data</uid> <gid>www-data</gid> <pythonpath>%d../%n</pythonpath> <module>%n</module> </uwsgi>
一切工作正常,关心我或我不完全理解的唯一事情是,当我运行“uwsgi –emperor / home / user / apps / vassals /”uwsgi时,我得到警告信息“ *警告:你以root身份运行uWSGI !!!(使用–uid标志)* “。
我可以忽略这个消息,还是这意味着uwsgi不考虑项目configuration文件中的uid gid设置?
非常感谢。 马里奥
您可以忽略它,但是,对于最佳做法,您应指定正在运行的用户。
uwsgi --emperor /path/to/vassels/* --uid www-data --gid www-data
这是抱怨皇帝进程是作为根运行。 现在,虽然这没有提出任何要求,但这可能是一个潜在的问题。 每个血pipe将有你指定的configuration。
如果可能的话,运行一个独立的stream程总是明智的。
uWSGI将以root身份运行时警告您。 独立的用法(以皇帝的身份来运行皇帝,允许封臣映射到不同的用户名是完全正确的),你会得到警告。 用户在运行根进程时一定要有意识。