Установка mod_python на CentOS c DirectAdmin

Для начала приступим к установке основы Python стандартных пакетов с репозитория:

yum install python python-devel -y

Найдем последнюю версию mod_python на сайте http://archive.apache.org/dist/httpd/modpython/.
В нашем случае последняя версия была mod_python-3.3.1
Далее скачиваем и подготавливаем пакет mod_python для установки:

cd /tmp
wget http://archive.apache.org/dist/httpd/modpython/mod_python-3.3.1.tgz 
tar xzf mod_python-3.3.1.tgz
cd mod_python-3.3.1
./configure --with-apxs=/usr/sbin/apxs
make dso
make install

Очень часто попадается следующая ошибка после команды "make dso":

connobject.c: In function ._conn_read.:
connobject.c:142: error: request for member .next. in something not a structure or union
apxs:Error: Command failed with rc=65536
 
make[1]: *** [mod_python.so] Error 1
make[1]: Leaving directory `/tmp/mod_python-3.3.1/src'
make: *** [do_dso] Error 2

С этой ошибкой справляемся следующим образом в файле mod_python-3.3.1/src/connobject.c в строке 142 заменяем следующую строку:

!(b == APR_BRIGADE_SENTINEL(b) ||
Меняем на:
!(b == APR_BRIGADE_SENTINEL(bb) ||

И заново делаем:

make dso
make install

После модуль должен установится нормально...

Далее подключаем модуль в конфигурационном файле apache - httpd.conf (в нашем случае так как установлен DirectAdmin файл находится по пути /etc/httpd/conf/httpd.conf) и вставляем в него строку:

LoadModule python_module /usr/lib/apache/mod_python.so

Теперь перезагружаем apache:

service httpd restart

Теперь проверим работу mod_python.
Создадим в каком либо домене два файла, .htaccess и index.py.
Содержимое .htaccess:

SetHandler python-program
PythonHandler mod_python.publisher
PythonDebug On

Содержимое index.py:
def index(req):
   html = "<html><body><h1>"
   return html+"Hello World!</h1></body></html>"

Если на экране видите надпись "Hello World!", то все работает правильно...

Вот и все...
Пользуемся теперь python скриптами...

Если есть вопросы, то просим Вас посетить наш форум, на котором Вы сможете попросить бесплатно описание...



Яндекс.Метрика
Счётчик ТЦ#65533;Ц LiveRSS: Каталог русскоязычных RSS-каналов