Redirection .htaccess

Nouveau WRInaute
Bonsoir à tous
j'ai profité des vacances pour refaire un peu les forums et mes infos .
maintenant que tout est fini j'ai besoin de rediriger mes anciens posts et articles vers les nouveau.
j'avais ce genre de liens
http://www.monsite.com/infos/article123.html
Maintenant j'ai ça :
http://www.monsite.com/infos/article123-le-titre-de-mon-article.html

merci ;-)
 
Nouveau WRInaute
Je sais c'est ce que j'ai fait ... mais comme j'ai deja bcp de liens sur google avec l'ancienne version , je veux qu'il soit redirigé par .htaccess( si c'est possible) vers les nouveaux :-)
 
WRInaute passionné
jarod23 a dit:
Je sais c'est ce que j'ai fait ... mais comme j'ai deja bcp de liens sur google avec l'ancienne version , je veux qu'il soit redirigé par .htaccess( si c'est possible) vers les nouveaux :-)

Moi pas comprendre...

Mais pour ta question, c'est impossible en .htaccess car titre-de-mon-article est inconnu du serveur au moment ou la page est demandée.

Il faut faire un 301 en php apres avoir interrogé la base de donnée...

Tes anciennes pages doivent pointer sur un truc du genre article.php?id=id

dans article.php il faut faire un truc du genre :

... recherche titre de la nouvelle page en fonction de id ....
header("HTTP/1.1 301 Moved Permanently");
header("Location:NOUVELLE PAGE");
header("Connection: close");
exit;

et ensuite il faut dans ton htaccess rediriger la nouvelle page vers un autre fichier que article.php, sinon tu risque de boucler....

Je vois pas plus simple pour l'instant..


Vous m'arrêtez si je dis des bêtises :oops:
 
WRInaute passionné
Je ne crois pas que tu dises des bétises.
Mais SPIP fait celà en natif, sans avoir de "double .htaccess"

Raisonons simplement et dans le bon sens ;-)

Dans un page j'ai comme lien
/page/mon-beau-titre-123.html
A ce moment le titre est déjà connu.
Et je sais que le clic pointe vers /page/article.php?id_article=123

A partir de là dans le .htaccess
Code:
RewriteRule ^(*)-([0-9]*).html$ /article.php?id_article=$2 [QSA,L]
Dans article.php le système affiche l'article 123, l'url est correcte, le titre peut aussi être mis en balise title, et h1 ...

Et si il y a d'autres pages qui fonctionnent avec des numéros (rubrique.php page.php ...), il suffit de mettre cette régle en dernière condition.

A mon avis on est bon, ou pas loin
 
WRInaute passionné
Kmacleod a dit:
Je ne crois pas que tu dises des bétises.
Mais SPIP fait celà en natif, sans avoir de "double .htaccess"

Raisonons simplement et dans le bon sens ;-)

Bien sûr mais c'est le schéma classique que tu proposes là...

Le problème ici est

besoin de rediriger mes anciens posts et articles vers les nouveau.

Les anciennes pages qui sont dans l'index des moteurs,vont êtres demandées, il veut simplement rediriger vers les nouvelles....

Ta solution ignore le 301.

Certes les pages se purgeront toutes seules, mais au bout de combien de temps ? et en passant par un duplicate content...

non ??
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut