[URL Rewriting] Comportement bizarre

Résolu
gwenhael Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -  
gwenhael Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Voila j'ai un site sous apache2 dont j'ai modifié le type des urls:
Fut un temps mes urls étaient:
URL A : http://www.monSite.tld/maPage.php?info=monFichier.html
maintenant mes urls sont :
URL B : http://www.monSite.tld/info-monFichier
Tout en sachant que j'ai déjà des régles qui en partant des url B reecrivent des urls au modèle A pour mes scripts.
Je souhaiterais que lorsqu'un client se connecte en utilisant une url A il soit redirigé sur la page avec l'url B et qu'en plus un code 301 soit généré.
Quelles sont les régles qui faut inscrire dans le fichier .htaccess histoire qu'apache fasse ce qu'il doit faire ?
J'ai fait un paquet de recherche un peu partout et avec un peu tous les moteurs et j'ai strictement rien trouvé qui puisse répondre à mon problème.
Merci d'avance
Gwenhaël

2 réponses

voyageur59 Messages postés 1112 Date d'inscription   Statut Membre Dernière intervention   132
 
Bonjour,

C'est pas un truc de ce genre que vous cherchez:

<?php
header("ma_nouvelle_page");
?>



Sinon, j'ai pas compris le problème!

Peut vous aurez plus de chance dans le forum programmation!
0
gwenhael Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,
Ben non c'est pas de la programmation.
Comme je le disais dans mon précédent post c'est dans le .htaccess que ça se passe.
En fait c'est apache qui se charge de prévenir le client de la redirection, le script n'est même pas encore exécuté.
Cela dit c'est bon j'ai trouvé j'avais en fait mal compris les régles de réécritures...

RewriteCond %{QUERY_STRING} info=([^.&]+)\.html
RewriteRule ^maPage\.php$ http://monSite.tld/infoTruc-%1 [R=301]

le QUERY_STRING ne porte que sur les paramètres passés ( après le ? dans l'url)
et le RewriteRule ne porte que sur la page demandée

Gwenhaël
0