Почему я получаю ошибку, неверная команда 'PythonHandler'?

8

Я пытаюсь развернуть приложение Django, но столкнулся с кирпичной стеной. В Debian (последняя версия) я до сих пор выполнял следующие команды:

apt-get install apache2 apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-python python-django

Я попытался добавить модуль вручную в конфигурационных файлах Apache 2, но, честно говоря, я полностью потерян. Это полностью отличается от Apache версии 1, которую я использовал несколько лет назад.

Syntax error on line 7 of /etc/apache2/sites-enabled/000-default:
Invalid command 'PythonHandler', perhaps misspelled or defined by a module not included in the server configuration

Я добавил следующее в мой sites-available/defaultфайл, между тегами.

    <Location "/">
              SetHandler python-program
              PythonHandler django.core.handlers.modpython
              SetEnv DJANGO_SETTINGS_MODULE hellodjango1.settings
              PythonDebug Off
    </Location>

Вот какие уроки я использовал до сих пор без особой удачи:

Ник Болтон
источник

Ответы:

5

Вы включили mod_python.load в модах? Вы можете сделать это, просто создав программную ссылку на тот же файл в доступных модах.

txwikinger
источник
txwikinger, спасибо за подсказку - мне пришлось вручную создавать файл .load. Что странно, так как я предполагал, что это уже будет там.
Ник Болтон
5

более простой способ сделать это

a2enmod python

llazzaro
источник
3

В Ubuntu вам необходимо:

apt-get install libapache2-mod-python
Крис Макафи
источник
0

Похоже, мне пришлось вручную создать файл python.load, странно. Во всяком случае, эти две команды исправили это:

echo "LoadModule python_module /usr/lib/apache2/modules/mod_python.so" > /etc/apache2/mods-available/python.load
ln -s ../mods-available/python.load etc/apache2/mods-enabled/python.load
Ник Болтон
источник
Хм, отрицательный голос. Может быть, я рассмотрю, какой ответ лучше всего подходит для этого вопроса.
Ник Болтон
отсутствует косая черта: etc / apache2 / mods-enabled / python.load
Петр
0

Если вы используете Gentoo, определите -D PYTHON в /etc/conf.d/apache2


источник