Réponses:
mod_pythonest fondamentalement non maintenu - vous devriez regarder mod_wsgi. Installez le package libapache2-mod-wsgi, puis lancez-le sudo a2enmod wsgipour l'activer.
Juste un exemple rapide pour le faire fonctionner, remplissez quelque chose comme ceci dans votre /etc/apache2/sites-enabled/default:
WSGIScriptAlias /test /path/to/python/file.py
Et dans le dossier /path/to/python/file.py:
def application(environ, start_response):
start_response('200 OK', [('Content-Type', 'text/plain')])
return "Hello World"
Après avoir redémarré Apache2, toute demande de /testse transformera en appel deapplication() dans votre fichier python.
Pour de plus amples informations, consultez WSGI (WebServer Gateway Interface), la façon dont Python s'intègre aux serveurs Web.
Bonus / mise à jour:
Python (sans surprise) a un petit serveur WSGI dans la bibliothèque standard pour les tests. Si vous ajoutez ceci au bas de votre fichier, vous pouvez l'exécuter comme n'importe quel ancien exécutable à des fins de test, puis laisser Apache prendre le relais pour la production:
if __name__ == '__main__':
from wsgiref.simple_server import make_server
httpd = make_server('', 8080, application)
print "Serving on http://localhost:8080"
httpd.serve_forever()
200à jour le '200 OK'par python.org/dev/peps/pep-0333