Python 如何将WSGIDaemonProcess用户设置为Django应用程序的根用户?
我尝试将WSGIDaemonProcess用户设置为root用户Python 如何将WSGIDaemonProcess用户设置为Django应用程序的根用户?,python,django,mod-wsgi,django-wsgi,Python,Django,Mod Wsgi,Django Wsgi,我尝试将WSGIDaemonProcess用户设置为root用户 [Fri May 02 04:48:47 2014] [error] [client 103.6.158.105] [Errno 13] Permission denied: '/var/www' [Fri May 02 04:48:47 2014] [error] [client 103.6.158.105] [Fri May 02 04:48:47 2014] [error] [client 103.6.158.105]
[Fri May 02 04:48:47 2014] [error] [client 103.6.158.105] [Errno 13] Permission denied: '/var/www'
[Fri May 02 04:48:47 2014] [error] [client 103.6.158.105]
[Fri May 02 04:48:47 2014] [error] [client 103.6.158.105] The Python egg cache directory is currently set to:
[Fri May 02 04:48:47 2014] [error] [client 103.6.158.105]
[Fri May 02 04:48:47 2014] [error] [client 103.6.158.105] /var/www/.python-eggs
[Fri May 02 04:48:47 2014] [error] [client 103.6.158.105]
[Fri May 02 04:48:47 2014] [error] [client 103.6.158.105] Perhaps your account does not have write access to this directory? You can
[Fri May 02 04:48:47 2014] [error] [client 103.6.158.105] change the cache directory by setting the PYTHON_EGG_CACHE environment
[Fri May 02 04:48:47 2014] [error] [client 103.6.158.105] variable to point to an accessible directory.
[Fri May 02 04:48:47 2014] [error] [client 103.6.158.105]
我的Django应用程序位于内部/home/user/app/
任何人都可以帮助以root身份运行WSGI守护进程。
谢谢。您不能让Apache子工作进程或mod_wsgi守护进程作为根运行。代码中有故意内置的保护,以防止您这样做,并且尝试这样做将导致错误,Apache将无法启动 如果您确实试图将“user=root”设置为WSGIDaemonProcess,但没有看到错误消息:
WSGI process blocked from running as root.
如果Apache没有启动,那么这只能意味着Apache父进程作为一个整体从一开始就没有作为根用户启动过,而不是因为根用户对代码执行的限制而对您有所帮助
相反,您的Apache实例是以用户“bangtest”的身份启动的,这意味着Apache在任何时候都绝对没有权限将所有者更改为root,即使您入侵了Apache和mod_wsgi代码,以明确删除保护您不为自己造成巨大安全问题的限制
简而言之,您确实不希望以root用户身份运行任何web应用程序,因为这是一个巨大的安全问题
顺便说一句,忽略了以root身份运行的不明智愿望,您在pythonegg缓存中遇到的实际问题在mod_wsgi文档中有明确的说明
www数据用户在/root文件夹中没有权限为什么要以root身份运行它?这听起来是个非常糟糕的主意。当我将图像上载到服务器时,它会使用以下权限保存图像-drwxr-xr-x 2 5198 May 1 22:54 image_2079.jpg*但我想成为上载文件的root所有者。您没有回答为什么需要它以root身份运行的问题。这就是为什么文件最终必须归根用户所有。你只是说你想这样,但这不是一个有效的理由。