Aller au contenu

Sujets conseillés

Posté

Bonsoir,

Après avoir parcouru un grand nombre de post traitant de la redirection, je n'arrive pas à trouver ce que je cherche

J'avais un ancien annuaire bien référencé avec des pages sous la forme

*ttp://monsite.com/liens.php?pays=france

certaines pages pouvaient avoir des variables en plus du style page=1 etc...

Je voudrai que toutes ces pages, quelque soit le nombre de variables soient redirigées vers une page unique qui s'appelle

*ttp://monsite.com/dir.php?classe=region

Quelqu'un pourrait-il me guider dans la rédaction du rewriting

Merci par avance

Posté

Salut,

Le plus simple est d'utiliser mod_rewrite.

Si l'URL vers laquelle tu dois rediriger toutes tes pages est bien de cette forme, ceci doit suffire:

RewriteEngine on
RewriteRule liens\.php dir.php?classe=region

(uniquement si "region" est une constante)

Si le site se trouve sur un serveur différent, tu peux aussi mettre dans un fichier .htaccess à la racine de l'ancien site

RewriteEngine on
RewriteRule liens\.php http://autredomaine.tld/dir.php?class=region [R,L]

Dan

Posté (modifié)

Apparemment celà fonctionne bien, encore merci

En parcourant différents posts, j'avais lu qu'en effectuant une rédirection 301 celà était apprécié des robots, notamment Google et, en plus, que celà permettait de conserver le PR des anciennes pages

Est-ce vrai et si oui, s'agit-il du complément [R 301] ?

Modifié par Levoyageur
Posté
RewriteEngine on
RewriteRule liens\.php dir.php?classe=region

Bonsoir,

Qui pourrait m'indiquer la signification et le rôle du \ entre liens et .php

Dois-je ajouter [R=301] à la fin de la ligne RewriteRule pour indiquer aux robots qu'il s'agit d'une redirection permanente

Merci pour vos explications

Posté

le . est un caractère utilisé dans les expressions régulières.

\. permet de désigner un "." dans l'URL (le \ annule l'effet de tout caractère le suivant).

Le [R=301] est nécessaire pour avoir un code 301 (le [R] tout seul fait une redirection de type "temporaire" - code 302-).

Posté
Le [R=301] est nécessaire pour avoir un code 301

Merci Wullon pour ces explications

N'étant pas très à l'aise dans ce domaine, est-il recommandé de mettre ce [R=301] ou bien celà n'a-t'il pas réellement d'utilité

Qu'est-ce qui est le mieux ?

Posté

Hum, moi je mettrais une redirection 301 pour le référencement, donc un R=301, mais je ne suis pas un spécialiste du domaine non plus ^^.

Posté
RewriteEngine on
RewriteRule liens\.php dir.php?classe=region

Bonjour,

Quand le htaccess est rédigé avec ce qui précède, aucun problème les anciennes pages avec liens.php sont correctement dirigées vers la nouvelle page dir.php?class=region

Si je mets RewriteRule liens\.php dir.php?classe=region [R=301,L] les anciennes pages sont renvoyées sur ma page d'accueil du fait que mon htaccess comporte aussi ErrorDocument 404 *ttp://www.levoyageur.net/index.php

Ne puis-je donc pas utiliser [R=301,L]

Merci pour vos précisions

Posté

Hum désolé je ne comprend plus rien, je croyais qu'un RewriteRule liens\.php dir.php?classe=region ne faisait pas de redirection (pas de flag [R]), je vais laisser donc un spécialiste te répondre :P.

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...