IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

[URLRewriting] sur une configuration multi-users


Sujet :

Apache

  1. #1
    Membre du Club Avatar de goldorax113
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2002
    Messages
    111
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2002
    Messages : 111
    Points : 64
    Points
    64
    Par défaut [URLRewriting] sur une configuration multi-users
    bonsoir,

    j'ai un Apache 2.2.4 installé sur un système mac os X.4.9.

    Je suis en train de développer un site dans le répertoire Sites de mon homedir (equivalent public_html sur linux). Le path complet est /Users/username/Sites/repertoireSite/

    Avec repertoireSite un sous repertoire dans lequel je développe mon site.

    je voudrais par l'intermédaire de l'url rewriting rediriger les erreurs 404 vers la page d'accueil (index.php). pour cela j'utilise le code suivant dans un .htaccess

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SetEnv PHP_VER 5
    Options +FollowSymlinks
    RewriteEngine on
    ErrorDocument 404 /index.php
    mon problème est que lorsque j'appelle l'adresse http://localhost/~UserName/repertoireSite/pageInexistante.html

    j'obtiens une erreur 404 (normal ) The requested URL /~UserName/repertoireSite/pageInexistante was not found on this server. MAIS j'obtiens aussi une autre erreur: Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

    si jamais dans le htaccess je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SetEnv PHP_VER 5
    Options +FollowSymlinks
    RewriteEngine on
    ErrorDocument 404 http://localhost/~UserName/repertoireSite/index.php
    ca fonctionne....

    comment faire pour éviter de devoir spécifier l'adresse complete histoire d'avoir un code "portable".

    J'ai pensé a RewriteBase / mais ça ne m'avance pas (peut être que je ne l'utilise pas correctement...)

    Merci de m'aider

    Cordialement

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Si tu vas dans les logs d'erreur d'Apache, tu auras un message plus clair sur le "Additionally, ..." : il dira quel fichier il a essayé de chercher et donc qu'il n'a pas trouvé. De là, tu déduiras les éventuelles corrections à apporter à ErrorDocument.

  3. #3
    Membre du Club Avatar de goldorax113
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2002
    Messages
    111
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2002
    Messages : 111
    Points : 64
    Points
    64
    Par défaut
    Salut Mac,

    je sais pourquoi il y a une Additionaly.... c'est que apache cherche /index.php à la racine d'apache (htdocs). Mais mon site est dans /Users/username/Sites/repertoireSite/ et il devrait afficher /Users/username/Sites/repertoireSite/index.php.

    Merci

  4. #4
    Membre du Club Avatar de goldorax113
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2002
    Messages
    111
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2002
    Messages : 111
    Points : 64
    Points
    64
    Par défaut
    J'ai regardé les logs:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    [Sat May 12 13:27:16 2007] [notice] Apache/2.2.4 (Unix) PHP/5.2.2 configured -- resuming normal operations
    [Sat May 12 13:27:24 2007] [error] [client ::1] File does not exist: /Users/UserName/Sites/repertoireSite/pageInexistante
    [Sat May 12 13:27:24 2007] [error] [client ::1] script '/usr/local/apache2/htdocs/index.php' not found or unable to stat
    [Sat May 12 13:27:31 2007] [notice] caught SIGTERM, shutting down
    le problème vient de la ligne en gras, apache cherche la page index.php dans la racine (htdocs) alors qu'il devrait la chercher dans le repertoireSite.

    Est ce qu'il existe in moyen de "redefinir" la racine ? ou quelque chose du genre

    Merci

  5. #5
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Y a des moyens pour redéfinir le document root mais pas dans un .htaccess. Ce n'est possible pour que pour les virtual hosts, ce qui n'est pas ton cas. Soit tu es tout seul à utiliser le serveur et dans ce cas tu changes simplement la directive DocumentRoot du httpd.conf pour faire pointer vers un nouveau répertoire, soit tu bidouilles le chemin indiqué dans ErrorDocument pour pointer vers le bon fichier (éventuellement en essayant de rajouter des /../).

  6. #6
    Membre du Club Avatar de goldorax113
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2002
    Messages
    111
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2002
    Messages : 111
    Points : 64
    Points
    64
    Par défaut
    tu pense que ça serait possible de faire des virtual hosts pour tout les comptes utilisateur ?

    Et que ces virtual hosts soit accessibles par :
    http://localhost/~User1/
    http://localhost/~User2/
    ...

    Comment font les hebergeurs ?

    Merci

  7. #7
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Les virtual hosts, ça agit au niveau du nom du serveur (i.e. ce qui suit le http://). Là, on parle de répertoire. Dans la conf Apache, y a moyen de définir des paramètres spécifiques à un répertoire et ses sous-répertoires (section <Directory>) mais il n'est pas possible d'y changer le DocumentRoot.

    Après, les hébergeurs, je ne sais pas trop comment ils gèrent les répertoires.

  8. #8
    Membre du Club Avatar de goldorax113
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2002
    Messages
    111
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2002
    Messages : 111
    Points : 64
    Points
    64
    Par défaut
    ok merci

  9. #9
    Membre du Club Avatar de goldorax113
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2002
    Messages
    111
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2002
    Messages : 111
    Points : 64
    Points
    64
    Par défaut
    Je mets en résolu. je n'ai pas trouvé de réponse à ma question mais je ne veux pas monopoliser le forum... Si quelqu'un à une solution, je suis preneur.

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 16/05/2006, 15h17
  2. Design d'une base multi-user
    Par Aurelien.Regat-Barrel dans le forum Langage SQL
    Réponses: 4
    Dernier message: 29/08/2005, 13h13
  3. Conseil sur une configuration oracle RAC
    Par mrhuve dans le forum Oracle
    Réponses: 44
    Dernier message: 22/07/2005, 16h40
  4. Recupération des selections sur une DBGrille multi Selection
    Par Andry dans le forum Bases de données
    Réponses: 1
    Dernier message: 26/11/2004, 12h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo