Why do I get error, Invalid command 'PythonHandler'?

16,625

Solution 1

Looks like I had to manually create the python.load file, weird. Anyway, these two commands fixed it:

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

Solution 2

more easy way to do it

a2enmod python

Solution 3

Have you enabled mod_python.load in mods-enabled? You can do this by just creating a softlink to the same file in mods-available.

Solution 4

On Ubuntu, you need to:

apt-get install libapache2-mod-python
Share:
16,625

Related videos on Youtube

Nick Bolton
Author by

Nick Bolton

Hello, I'm the CEO of Symless, the company behind Synergy, software that lets you share one mouse and keyboard between multiple computers.

Updated on September 17, 2022

Comments

  • Nick Bolton
    Nick Bolton almost 2 years

    I'm trying to deploy a Django application, but I've hit a brick wall. On Debian (latest), I've run these commands so far:

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

    I've tried adding the module manually in the Apache 2 config files, but to be honest I'm totally lost. It's totally different to Apache version 1 which I used years ago.

    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
    

    I've added the following to my sites-available/default file, between the tags.

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

    Here's what tutorials I've used so far, without much luck:

  • Nick Bolton
    Nick Bolton almost 15 years
    txwikinger, thanks for the tip - I had to manually create the .load file. Which is odd since I assumed it'd already be there.
  • Nick Bolton
    Nick Bolton over 13 years
    Hmm, a down-vote. Maybe I will review which answer works best for this question.
  • Petr
    Petr over 7 years
    there is missing slash: etc/apache2/mods-enabled/python.load