WSGI 在 Centos 上安装在哪里?

WSGI 在 Centos 上安装在哪里?

在守护进程模式下运行 Django 时,我遇到了权限问题。阅读此处https://code.google.com/p/modwsgi/wiki/ConfigurationIssues#Location_Of_UNIX_Sockets我认为解决方案是配置 WSGISocketPrefix

问题是我的 centos 服务器上找不到 /var/run/wsgi。

我能找到最接近的东西是:/etc/httpd/run/httpd.pid

我如何找到 wsgi 的安装位置?

或者我可以将 WSGISocketPrefix 设置为等于什么其他值?

答案1

从您提供的链接;

该目录应该是只有“root”用户才有写入权限的目录,或者,如果不以“root”身份启动 Apache,则应以启动 Apache 的用户身份启动。

这是他们给出的唯一要求。您可以使用满足这些要求的现有路径,也可以创建新路径。

文件/etc/httpd/run/httpd.pid适用于 Red Hat 及其衍生版本下的 Apache。此位置在 中定义/etc/httpd/conf/httpd.conf。(如果此位置发生更改,PIDFILE/etc/sysconfig/httpd必须更新 以匹配。)

ServerRoot "/etc/httpd"
...
PidFile run/httpd.pid

我会继续将其设置WSGISocketPrefix为与 Red Hat 位置相同的路径。但是,如果您愿意,您应该能够使用/var/run/wsgi。您只需要自己创建目录并分配权限。

答案2

一个选项是用来repoquery -l mod_wsgi查看哪些文件放在哪里。

[root@APPS ~]# repoquery mod_wsgi
mod_wsgi-0:3.2-7.el6.i686
[root@APPS ~]# repoquery -l mod_wsgi
/etc/httpd/conf.d/wsgi.conf
/usr/lib/httpd/modules/mod_wsgi.so
/usr/share/doc/mod_wsgi-3.2
/usr/share/doc/mod_wsgi-3.2/LICENCE
/usr/share/doc/mod_wsgi-3.2/README

它是 yum-utils 包的一部分。

相关内容