redirection 301 à la volée


KOogar
WRInaute accro
WRInaute accro
 
Messages: 3974
Inscription: 16 Nov 2004

redirection 301 à la volée

Message le Mar Aoû 25, 2009 17:35

bonjour,

je termine mon forum, et je vuex pouvoir modifier le Titre d'un Post en cours de production, donc son url va aussi etre modifiée car elle contient le Titre du Post. Je cherche donc le meilleur moyen de générer des redirections a la volée.

par .hatccess ?? avec des header php ?? du js ?? le plus performant ??

merci d'avance pour vos conseils
cordialement

Koogar


nickargall
WRInaute accro
WRInaute accro
 
Messages: 6468
Inscription: 13 Juin 2005

Re: redirection 301 à la volée

Message le Mer Aoû 26, 2009 10:52

Bonjour
La meilleure solution est le PHP je pense ..
un script qui récupere l'adresse demandée
puis constitue dans une variable l'adresse réelle de la page (en récupérant l'ID par exemple, si il est transmis) (sinon c'est un peu plus chiant ...)
puis qui compare les deux adresses et qui fait une redirection 301 par header si elles ne sont pas semblables

Comme ça tout est automatique

Oublie le JS, et quant au htaccess, ca risque d'etre super fastidieux (mettre une ligne à chaque changement de titre, pas glop)

Qu'en penses tu ?


KOogar
WRInaute accro
WRInaute accro
 
Messages: 3974
Inscription: 16 Nov 2004

Re: redirection 301 à la volée

Message le Mer Aoû 26, 2009 13:46

merci, c'est ca que je cherchais a savoir, quel est le meilleur langage a adopter. apres reflection je vois clairement comment procéder/ comme j'ai 5 minutes j'en profite pour l'écrire:

je vais stocker directement les 2 urls (l'ancienne et la nouvelle) dans une table sql.
3 champs => ancienne_url, nouvelle_url, date

sur la page d'affichage des posts je vais commencer par supprimer les urls qui ont plus de 7 jours
DELETE FROM redirection301 WHERE date + (3600*24*7) < " . time());

et pour exploiter les redirections, dans le header php, listage de la requete SELECT avec redirection:

Code: Tout sélectionner
<?php
if ($_SERVER["REQUEST_URI"] == $row['url_ancienne'] )  {
header("Status: 301 Moved Permanently");
header("Location: http://".$_SERVER['HTTP_HOST']."/".$row['nouvelle_ancienne'].""); } ?>


reste plus qu'a l'adpater 8)

Si tu vois mieux ?

++


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités