2009-09-23 2 views
0

Я использую mod_python.publisher для запуска кода Python и обнаружил проблему. Когда я обновляю скрипт, обновление не всегда работает сразу, и я получаю ту же ошибку, которую исправил с обновлением, до тех пор, пока я не перезапущу Apache.Ошибка кэша интерпретатора mod_python при смене сценария?

Иногда это работает сразу же, но иногда нет ... но перезапуск Apache определенно всегда догоняет его. Это боль, чтобы перезапустить Apache так сильно, и я думаю, что есть лучший способ сделать это, но что это?

+2

Рассмотрите возможность переключения на mod_wsgi, где вы можете более легко управлять этим с помощью команды unix 'touch'. –

ответ

3

Это ожидаемое поведение mod_python. Ваш код загружается в память и не обновляется до перезапуска сервера.

У вас есть два варианта:

  1. Set MaxRequestsPerChild 1 в файле httpd.conf, чтобы заставить Apache перезагрузить все для каждого запроса.

  2. Набор PythonAutoReload быть на
    http://www.modpython.org/live/mod_python-3.2.5b/doc-html/dir-other-par.html

Но не делайте этого на сервере, так как это будет замедлять время инициализации.

+0

Это не работает на моем хостинге без доступа root. Слишком плохо, что каждое исправление должно ждать много времени, чтобы пойти вживую. –