Image

mod_python

Добрый день.

На работе используется питон для автоматизации некоторых рутинных операций. Возникла необходимость использовать его и в качестве языка для веб сервера.

На win2k поставлен следующий софт:
apache_2.2.6-win32-x86-openssl-0.9.8e.msi
mysql-essential-5.0.45-win32.msi
python-2.5.msi
mod_python-3.3.1.win32-py2.5-Apache2.2.exe

при установке mod_python в папку питона были положены файлы. в настройках ("C:\Program Files\Apache Software Foundation\Apache2.2\conf\httpd.conf") апача была добавлена строчка: LoadModule python_module modules/mod_python.so

при запуске апача питон стартует. вот лог (error.log):
[Tue Oct 23 11:43:10 2007] [notice] Apache/2.2.6 (Win32) configured -- resuming normal operations
[Tue Oct 23 11:43:10 2007] [notice] Server built: Sep  5 2007 08:58:56
[Tue Oct 23 11:43:10 2007] [notice] Parent: Created child process 1472
[Tue Oct 23 11:43:10 2007] [notice] Child 1472: Child process is running
[Tue Oct 23 11:43:10 2007] [notice] Child 1472: Acquired the start mutex.
[Tue Oct 23 11:43:10 2007] [notice] Child 1472: Starting 250 worker threads.
[Tue Oct 23 11:43:11 2007] [notice] Child 1472: Starting thread to listen on port 80.
[Tue Oct 23 11:45:17 2007] [warn] pid file C:/Program Files/Apache Software Foundation/Apache2.2/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?
[Tue Oct 23 11:45:17 2007] [notice] Apache/2.2.6 (Win32) configured -- resuming normal operations
[Tue Oct 23 11:45:17 2007] [notice] Server built: Sep  5 2007 08:58:56
[Tue Oct 23 11:45:17 2007] [notice] Parent: Created child process 632
[Tue Oct 23 11:45:17 2007] [notice] mod_python: Creating 8 session mutexes based on 0 max processes and 250 max threads.
[Tue Oct 23 11:45:18 2007] [notice] Child 632: Child process is running
[Tue Oct 23 11:45:18 2007] [notice] Child 632: Acquired the start mutex.
[Tue Oct 23 11:45:18 2007] [notice] Child 632: Starting 250 worker threads.
[Tue Oct 23 11:45:18 2007] [notice] Child 632: Starting thread to listen on port 80.

Сделал тестовую страничку, как написано в инструкции:
.htaccess:
<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/test">
    AddHandler mod_python .py
    PythonHandler mptest
    PythonDebug On
</Directory>

mptest.py:
from mod_python import apache

def handler(req):
    req.content_type = 'text/plain'
    req.write("Hello World!")
    return apache.OK

При открытии странички в браузере выдается весь скрипт, а не строка "Hello World!"
В логах access.log
127.0.0.1 - - [23/Oct/2007:11:59:15 +0700] "GET /test/mptest.py HTTP/1.1" 200 131


Что я не так делаю? почему mod_python запускается, но скрипт не отрабатывает?