Url Rewriting - Confusion dossier virtuel / fichier homonyme

Discussion dans 'URL Rewriting et .htaccess' créé par djaezeris, 29 Novembre 2007.

  1. djaezeris
    djaezeris Nouveau WRInaute
    Inscrit:
    29 Novembre 2007
    Messages:
    3
    J'aime reçus:
    0
    Bonjour,

    Je vais essayer d'être simple et concis. Je découvre l'url-rewriting depuis hier matin. Et je me heurte déjà à mes premiers soucis.

    Ce que je souhaite : faire correspondre l'adresse virtuelle
    "http://www.example.com/nous-contacter/" à
    "http://www.example.com/index.php?page=nous-contacter"

    Le fonctionnement du site est simple : la page index fait un include ($_GET[page].'.php'). Le fichier en question se trouvant donc à la racine. Le tout étant un peu plus protégé que cela mais je simplifie.

    Le problème est en soi très simple, l'appel de
    "http://www.example.com/nous-contacter/" (le répertoire physique n'existe pas)
    revient à appeler
    "http://www.example.com/nous-contacter.php"

    Autrement le htaccess semble bien fonctionner, j'ai essayé d'appeler
    "http://www.example.com/plop/"
    en modifiant mon fichier index.php pour faire l'équivalent d'un include ('extension_'.$_GET[page].'.php') et là le fichier extension_plop.php est bien inclus, preuve que le paramètre est bien passé dans l'url.

    A coté de ça j'ai essayé de virer le .htaccess et d'appeler,
    "http://www.example.com/nous-contacter/"
    et je retombe bien sur
    "http://www.example.com/nous-contacter.php"

    Cela viendrait du serveur ? mais à moins d'avoir raté une étape, je croyais que le htaccess passait en premier, l'url devrait donc être réécrite...

    La solution serait de renommer les fichiers mais cela ne saurait être qu'une solution de dernier recours.

    Ci-dessous le code de mon htaccess :

    Code:
    # Erreur 404
    ErrorDocument 404 /index.php
    
    # URL Rewriting
    Options +FollowSymlinks
    RewriteEngine on
    RewriteBase /
    # Cas des fiches produits
    	RewriteRule	(liste-)([0-9]+)(/fiche-produit)(/?) /index.php?page=fiche-produit&id=$2&nav=rech [L]
    	RewriteRule	([0-9]+)(/fiche-produit)(/?) /index.php?page=fiche-produit&id=$1 [L]
    	
    # Rubriques standards
    	RewriteRule	^([-a-zA-Z0-9_]{1,})(/?)$ index.php?page=$1 [L]
    (les fiches produits fonctionnent à priori correctement)

    Je suis navré de vous présenter de manière aussi brouillon, mais si ce post est brouillon c'est que mes idées sont aussi peu claires que mon énoncé.

    Merci d'avance à ceux qui pourront me répondre.
    Cordialement,

    Matthieu
     
  2. Leonick
    Leonick WRInaute accro
    Inscrit:
    8 Août 2004
    Messages:
    19 274
    J'aime reçus:
    0
    non, il me semble que la réécriture ne s'applique que si l'url ne peut être obtenue directement. Du moins c'est ce que j'ai remarqué sur mes différents sites.
     
  3. djaezeris
    djaezeris Nouveau WRInaute
    Inscrit:
    29 Novembre 2007
    Messages:
    3
    J'aime reçus:
    0
    Merci de ta réponse.

    Finalement après quelques heures de recherches acharnées, la solution est venue. Un simple ajout de Options -MultiViews a suffi à régler mon problème.

    Ce qui fait que l'appel d'un fichier sans son extension renvoie une erreur 404, le .htaccess fonctionne donc.

    Bonne continuation. :)
     
  4. Leonick
    Leonick WRInaute accro
    Inscrit:
    8 Août 2004
    Messages:
    19 274
    J'aime reçus:
    0
    le problème, c'est qu'il faudra absolument qu'il y ait la bonne extension dans l'url, s'il n'y a pas de réécriture dans htaccess, et qu'on appelle www.example.com/toto on aura une belle erreur 404 quand bien même toto.php ou toto.htm existerait :cry:
     
  5. djaezeris
    djaezeris Nouveau WRInaute
    Inscrit:
    29 Novembre 2007
    Messages:
    3
    J'aime reçus:
    0
    C'est la que le ErrorDocument 404 /index.php intervient selon moi, sachant que si le fichier index.php est inaccessible, c'est le site entier qui tombe...

    Cela me semblait une solution plutôt honnête ?
     
Chargement...
Similar Threads - Rewriting Confusion dossier Forum Date
Paramètres urls & urlrewriting => alphabétiques ou codés ? Problèmes de référencement spécifiques à vos sites 30 Mars 2022
Problème url rewriting et redirection URL Rewriting et .htaccess 4 Février 2022
URL rewriting d'images URL Rewriting et .htaccess 22 Janvier 2022
petit soucis url rewriting URL Rewriting et .htaccess 17 Janvier 2022
url rewriting ne fonctionne pas chez moi URL Rewriting et .htaccess 4 Août 2021
URL rewriting et REGEX bonnes pratiques Développement d'un site Web ou d'une appli mobile 9 Septembre 2020
supprimer /index.html sans url rewriting, possible ? URL Rewriting et .htaccess 13 Novembre 2019
Je bloque sur le rewriting des URL contenant un ? URL Rewriting et .htaccess 3 Septembre 2019
récupération du get après rewriting URL Rewriting et .htaccess 21 Juin 2019
Ralentissement url rewriting URL Rewriting et .htaccess 1 Mai 2019
URL Rewriting Débuter en référencement 17 Avril 2019
Conflit de redirection 301 et Urlrewriting Netlinking, backlinks, liens et redirections 20 Février 2019
URL REWRITING et redirection 301 URL Rewriting et .htaccess 24 Janvier 2019
URL Rewriting : difficultés avec RewriteCond ? URL Rewriting et .htaccess 5 Décembre 2018
Résolu URL Rewriting : Garder l'adresse non transformée dans le navigateur URL Rewriting et .htaccess 2 Décembre 2018
Mes débuts dans l'URL Rewriting URL Rewriting et .htaccess 14 Novembre 2018
Url rewriting Techniques avancées de référencement 22 Octobre 2018
URL rewriting et redirections après restauration post-piratage Débuter en référencement 29 Septembre 2018
url rewriting wordpress sans repertoire URL Rewriting et .htaccess 12 Août 2018
rewriting specifique pour Adwords AdWords 17 Juillet 2018