mod_wsgi

Модуль позволяет Apache работать c web-приложениями, написанными на языке Синтаксис Python. Позволяет запускать web-приложения в двух режимах:

  • режим встраивания, при котором используются одинаковые идентификаторы пользователя(uid) и группы(gid) для всех использующих модуль приложений
  • режим демона (доступен для Apache 2.x) - где можно задать пользователя, от имени которого будет запускаться каждое приложение, что повышает безопасность в случае общего хостинга для разных пользователей.

Есть несколько причин для перехода с mod_python на mod_wsgi:

  • mod_python больше не поддерживается разработчиком;
  • mod_wsgi требует меньше ресурсов для своей работы и обладает большими возможностями в настройке.

Установка mod_wsgi

aptitude install libapache2-mod-wsgi

Команды /etc/init.d/apache2 reload при установке libapache2-mod-wsgi оказалось недостаточно. Нужно полностью перезапустить Apache.

# /etc/init.d/apache2 stop
# /etc/init.d/apache2 start

Проверяем подключен ли mod в Apache:

# tail -F /var/log/apache2/error.log

Вы должны увидеть строку:

[Sun Jul 05 21:53:18 2009] [warn] mod_wsgi: Compiled for Python/2.6.1+.
[Sun Jul 05 21:53:18 2009] [warn] mod_wsgi: Runtime using Python/2.6.2.
[Sun Jul 05 21:53:18 2009] [warn] mod_wsgi: Python module path '/usr/lib/python2.6/
:/usr/lib/python2.6/plat-linux2:/usr/lib/python2.6/lib-tk:/usr/lib/python2.6/lib-old
:/usr/lib/python2.6/lib-dynload'.
[Sun Jul 05 21:53:18 2009] [notice] Apache/2.2.11 (Ubuntu) PHP/5.2.6-3ubuntu4.1 with Suhosin-Patch
mod_wsgi/2.3 Python/2.6.2 configured -- resuming normal operations

Просмотр лога показывает, что mod_wsgi/2.3 подключен.

PQ VPS сервера в 28+ странах.