Назад | Перейти на главную страницу

Где на Centos установлен WSGI?

У меня возникает проблема с разрешениями при запуске 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 равным?

Один из вариантов - использовать 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.

По ссылке, которую вы дали;

Каталог должен быть доступен для записи только пользователю «root» или, если Apache запускается не как «root», то пользователю, от имени которого запускается Apache.

Это единственное требование, которое они предъявили. Вы можете использовать существующий путь, отвечающий этим требованиям, или создать новый.

Файл, /etc/httpd/run/httpd.pid, правильно для Apache под Red Hat и производными. Это местоположение определено в /etc/httpd/conf/httpd.conf. (Если это местоположение изменено, PIDFILE в /etc/sysconfig/httpd должны быть обновлены для соответствия.)

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

Я бы пошел и поставил WSGISocketPrefix по тому же пути, что и локация Red Hat. Однако вы сможете использовать /var/run/wsgi, если хотите. Вам просто нужно создать каталог и самому назначить разрешения.