Aller au contenu

remplacement par expression reguliere


Sujets conseillés

Posté

Bonjour

J'ai migré mon forum et j'ai du mal à rediriger les anciennes pages vers les nouvelles. J'ai des problemes de comptabilité au niveau htaccess et je pensais donc le faire via une gestion des erreurs dans mon fichier 404.

J'ai des pages du type:

-www.photos-suede.com/forum/sweden-ftopic262.php

Je pensais récupérer le SCRIPT_NAME via les variables serveurs forum/sweden-ftopic262.php en verifiant que la structure est

"forum/sweden-ftopic([0-9]*)\.php" et remplacer par forum/viewtopic.php?([0-9]) puis redirrger en 301 vers la nouvelle url avec

{
header("HTTP/1.0 301 Moved Permanently");
header("Status: 301 Moved Permanently");
header("Location: $url_final");
exit;
}

Par contre, je seche sur l'expression reguliere à utiliser...

François

Posté

2 methodes

pour le htaccess:

RewriteRule  ^forum/sweden-ftopic([0-9]*).php$ forum/viewtopic.php?$1 [L,QSA]

en php:

preg_replace("/forum\/sweden-ftopic([0-9]*).php$/","forum/viewtopic.php?$1",$ton_url);

Posté

Merci,

Pour le htaccess, j'ai des bugs. C'est pour cela que je pensais passer par une gestion des 404.

Je vais essayer de tester au cas pas cas le htaccess pour voir ou cela bugue.

Posté

Je ferais ceci:

RewriteRule  sweden-ftopic([0-9]*).php http://www.photos-suede.com/forum/viewtopic.php?$1 [R=301,QSA,L]

tout simplement ;)

Posté
Je ferais ceci:

RewriteRule  sweden-ftopic([0-9]*).php http://www.photos-suede.com/forum/viewtopic.php?$1 [R=301,QSA,L]

tout simplement ;)

Merci à tous

J'ai resolu mon probleme de htaccess (ordre des regles de redirection et du nouveau forum)

Pour la 301, j'ai une prise en charge ensuite pour eviter les duplicate donc je laisse en re-écriture pour eviter deux 301 de plus.

Veuillez vous connecter pour commenter

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



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