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 :

[Rewriting] Ne trouve pas un fichier existant ?


Sujet :

Apache

  1. #1
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut [Rewriting] Ne trouve pas un fichier existant ?
    Salut,

    J'ai un petit soucis avec l'url rewriting.

    En effet, voici un .htaccess que j'ai mis dans /home/moi/public_html (public_html est bien l'UserDir, pas de soucis de ce côté là).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Options +FollowSymLinks
    RewriteEngine On
    RewriteRule ^test/a.php$ index.php [L]
    Or, quand j'accède à http://leserveur/~moi/test/a.php, il me sort :
    Not Found

    The requested URL /home/moi/public_html/index.php was not found on this server.
    Desfois que, voici le httpd.conf
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    LoadModule userdir_module /usr/lib/apache2/modules/mod_userdir.so
    <IfModule mod_userdir.c>
        UserDir public_html
    </IfModule>
    <Directory /home/*/public_html>
        AllowOverride FileInfo AuthConfig Limit
        Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
        <Limit GET POST OPTIONS PROPFIND>
                Order allow,deny
                Allow from all
        </Limit>
        <Limit PUT DELETE PATCH PROPPATCH MKCOL COPY MOVE LOCK UNLOCK>
                Order deny,allow
                Deny from all
        </Limit>
    </Directory>
    Il semblerait qu'il faille ajouter un Override All quelque part...
    Peut-être que je dois rajouter à la main un LoadModule pour mon mod_rewrite ? Ce qui est bizarre c'est qu'apache sait que test/a.php doit renvoyer index.php... mais qu'il ne le fait pas (enfin, qu'il le fait mal).

    à tous de votre aide !

  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
    Le problème c'est qu'Apache se gauffre en calculant l'URL vers index.php : au lieu de calculer /~moi/test/index.php, il calcule l'URL /home/moi/public_html/index.php, qui est en fait le chemin physique du fichier, pas son URL. Mais je ne sais pas d'où ça vient. Y a que ces 3 lignes dans ton .htaccess ?

  3. #3
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    oui... tu comprends maintenant pourquoi je suis sur le point de me pendre ?

  4. #4
    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
    Question très bête : tu as essayé en mettant /index.php ou /~moi/test/index.php à la place de index.php tout seul, dans ta RewriteRule ?

  5. #5
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    Oui. Mais ça devrait marcher sans.
    Aucun des deux ne marche.

  6. #6
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Points : 5 673
    Points
    5 673
    Par défaut
    Bonjour,

    Moi j'ai ça dans le mien :

    <Directory "/home/www/webxxxx/html">
    Options -FollowSymLinks -SymLinksIfOwnerMatch
    AllowOverride All

  7. #7
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    Je testerai, merci. Mais j'ai l'impression qu'il est vraiment capricieux ce apache-là...

  8. #8
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    Citation Envoyé par N1bus Voir le message
    Bonjour,

    Moi j'ai ça dans le mien :
    Il ne veut toujours pas même avec ce que tu m'as donné
    Je suis un peu perdu là, j'ai essayé pas mal de choses.

  9. #9
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Points : 5 673
    Points
    5 673
    Par défaut
    Une question bête , mais on ne sait jamais :

    As tu bien chargé rewrite_module ?

    LoadModule rewrite_module /usr/lib/apache2-prefork/mod_rewrite.so
    Moi j'ai ça dans :
    /etc/apache2/sysconfig.d/loadmodule.conf
    Mais tu peux l'avoir ailleurs (selon ta distrib)

  10. #10
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    Alp obtiendrait une erreur 500 si le module n'était pas activé, les directives Rewrite* n'étant alors pas reconnue et gérée. S'agissant vraisemblablement d'une Debian (ou dérivée), la directive LoadModule, pour les versions 2, devrait apparaître dans le fichier /etc/apache2/mods-available/rewrite.load (utiliser la commande a2enmod rewrite dans le cas contraire puis redémarrer Apache).

    Quant à :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Options +FollowSymLinks
    N'est pas permis sans la valeur Options (ou All) au niveau de la directive AllowOverride du répertoire concerné. Mais, par rapport à la réécriture, l'option SymLinksIfOwnerMatch devrait suffire (équivalente, dans le cas présent, à FollowSymLinks).

    Enfin, par rapport aux règles de réécriture, étant donné le contexte, en spécifiant la base (RewriteBase /~moi/ avant les règles), Apache devrait y retrouver ses billes.

  11. #11
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    Euh je ne sais plus trop à quel endroit je dois mettre telle ou telle instruction...

    La directive LoadModule est bien dans mods-available/rewrite.load.

    Ensuite, julp à ton avis, qu'est-ce que je dois faire ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    File Edit Options Buffers Tools Help                                            
    LoadModule userdir_module /usr/lib/apache2/modules/mod_userdir.so
    <IfModule mod_userdir.c>
        UserDir public_html
    </IfModule>
    <Directory /home/*/www>
        AllowOverride FileInfo AuthConfig Limit
        Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
        <Limit GET POST OPTIONS PROPFIND>
                Order allow,deny
                Allow from all
        </Limit>
        <Limit PUT DELETE PATCH PROPPATCH MKCOL COPY MOVE LOCK UNLOCK>
                Order deny,allow
                Deny from all
        </Limit>
    </Directory>
    <Directory /home/galery/public_html/>
            Otions -FollowSymLinks -SymLinksIfOwnerMatch
            Allow Override All
    </Directory>
    Sachant que galery est l'utilisateur qui me concerne. J'ai laissé la ligne précédente juste comme ça, pour avoir un "backup". Par contre comme il n'y a pas de www ça n'interfère pas avec le DIrectory que j'ai rajouté.

    Je dois rajouter un RewriteBase /home/galery/public_html/ dans mon Directory ?

  12. #12
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    julp > le RewriteBase ne change rien...

    Une autre idée ?

  13. #13
    Alp
    Alp est déconnecté
    Expert éminent sénior

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Points : 11 860
    Points
    11 860
    Par défaut
    Bon, fallait rajouter /~galery/ devant index.php...

    Par contre, pour peu que l'url réécrite pointe vers un sous-dossier (genre "test" dans mon htaccess), il n'y a plus les images

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

Discussions similaires

  1. file_get_contents ne trouve pas un fichier qui existe
    Par laurentSc dans le forum Langage
    Réponses: 13
    Dernier message: 30/07/2013, 22h46
  2. apache ne trouve pas certains fichiers via rewrite
    Par gorgonite dans le forum Apache
    Réponses: 2
    Dernier message: 30/10/2008, 10h34
  3. navigateur ne trouve pas le fichier PHP
    Par skandaboy dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 14/03/2007, 21h23
  4. Je ne trouve pas le fichier Struts-Config.xml
    Par masse dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 06/10/2006, 10h33
  5. [FEDORA] Je ne trouve pas les fichiers includesous Feodra core 3 ?
    Par sali dans le forum RedHat / CentOS / Fedora
    Réponses: 4
    Dernier message: 22/10/2005, 23h30

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