2009-01-05 21 views
1

Dans mon serveur Apache dirais-je:Comment accéder au chemin racine dans un répertoire mod_python?

<Directory /var/www/MYDOMAIN.com/htdocs> 
    SetHandler mod_python 
    PythonHandler mod_python.publisher 
    PythonDebug On 
</Directory> 

J'ai un fichier handler.py avec une fonction d'index. Lorsque je vais sur MYDOMAIN.com/handler.py, je vois une page Web produite par la fonction d'index (juste une page HTML plaine). Chaque autre page est de ce type: MYDOMAIN.com/handler.py/ nom de famillenom de domaine correspond à une fonction dans le fichier handler.py.

Mais quand je vais à MYDOMAIN.com, je reçois ceci:

Introuvable

L'URL demandée/n'a pas été trouvé sur ce serveur .

Y a-t-il un moyen avec mod_python et éditeur de simplement utiliser la racine et non pas un nom.py comme point de départ?

Je l'ai déjà essayé avec cela dans le fichier de configuration apache:

DirectoryIndex handler.py

Sans résultat :(

+0

N'utilisez pas mod_python. Ça craint. Utilisez plutôt mod_wsgi. – nosklo

Répondre

2

Oui, mais vous devez créer votre propre gestionnaire. Vous utilisez actuellement l'éditeur, il vérifie simplement l'URI et charge le module python donné.

Pour créer votre propre gestionnaire, vous devez créer un module comme celui-ci (juste un exemple minimalistes):

from mod_python import apache 

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

Ensuite, vous pointez juste dans la configuration Apache.

Vous pouvez toujours utiliser le gestionnaire d'éditeur dans votre propre gestionnaire, même si vous ne pouvez pas avoir de jolies URL avec lui AFAIK.

0

Essayez de créer un fichier vide appelé index (ou quoi que) dans le répertoire, puis utiliser

DirectoryIndex index 

On dirait que la vérification de DirectoryIndex est terminée en regardant le système de fichiers.