dmart Posté 18 Octobre 2011 Posté 18 Octobre 2011 Bonjour, Je me doute bien que le sujet est récurent et certainement simple, mais... Je suis en train de rénover un vieux site et j'ai besoin de faire des redirections 301 1) j'ai des adresses du type: http://delafeuilledor.fr/Violet/violetmain.php?page=ateliers que je voudrais rediriger vers http://delafeuilledor.fr/vdisplay.php?page=atelier ça ne marche pas (est-ce dû à tout ce qu'il y a après ".php?" ?) Ce serait gentil de me donner le code complet à mettre dans mon .htaccess actuellement vide. 2) Moins important et séparé, est-il possible de supprimer complètement le : vdisplay.php?page= Ou le remplacer si nécessaire par un mot "théâtre" par exemple ? J'ai bien essayé de lire différents article mais je n'ai pas dû bien tout comprendre. Merci de votre aide
Ernestine Posté 18 Octobre 2011 Posté 18 Octobre 2011 Bonjour, Pour le premier point, je pense que ceci devrait fonctionner : RewriteCond %{QUERY_STRING} ^page=(.*)$RewriteRule ^Violet/violetmain\.php$ http://delafeuilledor/vdisplay.php?page=%1 [L,R=301] Pour le deuxième, ceci (c'est qu'un exemple à adapter, tu peux remplacer "page" par ce que tu veux) : RewriteRule ^page-(.+).html$ vdisplay.php?page=$1 [L] Et si tu veux combiner les deux, à savoir une redirection 301 de Violet/violetmain.php?page=truc vers page-truc.html qui redirige (sans 301) vers vdisplay.php?page=truc, il faut mettre : RewriteCond %{QUERY_STRING} ^page=(.*)$RewriteRule ^Violet/violetmain\.php$ http://delafeuilledor/page-%1.html [L,R=301]RewriteRule ^page-(.+).html$ vdisplay.php?page=$1 [L] PS : et tu nous dis que ton .htaccess est actuellement vide, donc n'oublie pas d'ajouter au début : RewriteEngine On pour activer l'url rewriting.
dmart Posté 18 Octobre 2011 Auteur Posté 18 Octobre 2011 Merci beaucoup Ernestine, Cela fait des mois que j'attendait pour attaquer la remise à jour de ce site, Ça marche nickel. (juste j'ai dû rajouter l'extension du domaine). En ce qui concerne le deuxième point RewriteCond %{QUERY_STRING} ^page=(.*)$RewriteRule ^Violet/violetmain\.php$ http://delafeuilledor/page-%1.html [L,R=301]RewriteRule ^page-(.+).html$ vdisplay.php?page=$1 [L] Ça donne une adresse un peu trop compliquée à mon goût: http://delafeuilledor.fr/page-ateliers.html?page=ateliers un simple "page=atelier" aurait été plus élégant à mon goût, Sans vouloir abuser une autre question Existe il une solution pour, provisoirement, faire les redirection page par page sans affecter tout le site. Juste le temps d'avoir refait l'ensemble des pages ? Bonne soirée.
Ernestine Posté 18 Octobre 2011 Posté 18 Octobre 2011 Ça donne une adresse un peu trop compliquée à mon goût: http://delafeuilledor.fr/page-ateliers.html?page=ateliers un simple "page=atelier" aurait été plus élégant à mon goût Ah oui, j'ai oublié le point d'interrogation à la à la fin de la deuxième ligne (après page-%1.html), il suffit de faire : RewriteCond %{QUERY_STRING} ^page=(.*)$RewriteRule ^Violet/violetmain\.php$ http://delafeuilledor.fr/page-%1.html? [L,R=301]RewriteRule ^page-(.+).html$ vdisplay.php?page=$1 [L] Ce qui dirigera vers une adresse du style page-atelier.html (qui elle-même pointera sur vdisplay.php?page=atelier) Pour ton autre demande, tu peux tout simplement faire les redirections une par une à la main, exemple pour la page atelier : RewriteCond %{QUERY_STRING} ^page=atelier$RewriteRule ^Violet/violetmain\.php$ http://delafeuilledor.fr/page-atelier.html? [L,R=301]RewriteRule ^page-atelier.html$ vdisplay.php?page=atelier [L] En dupliquant ces trois lignes autant de fois que tu as de pages à rediriger, en remplaçant le mot "atelier" par les noms nécessaires
dmart Posté 18 Octobre 2011 Auteur Posté 18 Octobre 2011 Merci beaucoup, je regarde tout ça tranquillement demain. Et reviendrait bien sûre pour tenir compte des résultats. C'est vraiment agréable d'obtenir des réponses concrètes et efficaces. D.M.
dmart Posté 19 Octobre 2011 Auteur Posté 19 Octobre 2011 Formidable tout marche comme je le souhaitait. Merci Ernestine, Une bonne journée à toi. D.Martigne
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant