URL Rewriting et redirections

Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics

leo
Nouveau WRInaute
 
Messages: 6
Inscription: Dim Avr 13, 2003 12:02

URL Rewriting et redirections

Message le Jeu Sep 02, 2004 19:29

Salut tout le monde,


J'ai décidé il y a peu de réécrire à la volée les urls de certaines des pages de mon site. Le problème est que les anciennes urls d'accès, enregistrées par google ne redirigent pas vers les urls que j'ai réécrites. Ce n'est pas faute d'avoir essayé mais j'ai un gros problème de boucle infinie.
Voilà une de mes règle de réécriture (je met le titre du produit dans les liens vers celui-ci):

Code: Tout sélectionner
^Article([0-9]+)-Titre-article.php$ articles.php?prod=$1 [L]


Et voici comment j'ai essayé de faire ma redirection:

Dans chaque page réécrite j'inclu un fichier chargé de rediriger le visiteur. Voilà en gros mon code:


Code: Tout sélectionner
$page = getenv($PHP_SELF); //Recupération du nom du script qui est en train de s'executer
$query = getenv("QUERY_STRING"); // Récupération des paramètres passés au script
if(!empty($query)) //Si il n'y a pas de paramètres, on ne redirige pas
{
  switch($page)
  {
   case "articles.php":
      {
        if(!empty($prod) && is_numeric($prod))
        {
         $titre= recup_titre(); //Je récupère le titre de mon article
         $url = make_url("Article",$prod,$titre); //Je construis l'url de redirection( url réécrite)
         header("Location: $url");
        }
      break;
      }
  }
}


Le problème, c'est que lorsque j'appelle par exemple la page articles.php?prod=15, mon script me redirige bien vers Article15_Titre.php, mais une fois que la page Article15_Titre.php est appelée, la variable $page ne prend pas la valeur Article15_Titre.php mais toujours articles.php. Résultat: J'ai une redirection infinie vers Article15_Titre.php. J'aimerai donc savoir comment connaître le nom du fichier chargé tel qu'il apparaît dans la barre du navigateur et non en interne.
Ca devrait ensuite me permettre de faire correctement les redirections.

Merci beaucoup à ceux qui essayeront de m'aider

@+


Kmacleod
WRInaute accro
WRInaute accro
 
Messages: 3418
Inscription: Jeu Nov 28, 2002 15:47

Message le Jeu Sep 02, 2004 20:06

De memoire n'est ce pas $_SERVER['REQUEST_URI'];

leo
Nouveau WRInaute
 
Messages: 6
Inscription: Dim Avr 13, 2003 12:02

Message le Ven Sep 03, 2004 9:00

OK merci beaucoup ca marche nickel ;)

leo
Nouveau WRInaute
 
Messages: 6
Inscription: Dim Avr 13, 2003 12:02

Message le Sam Sep 04, 2004 10:41

Désolé, mais en fait j'ai encore une question, cette fois au sujet d'une règle de réécriture. En fait sur mon forum, au lieu d'avoir une url du type message.php?msg=1250&page=3 j'aimerais avoir une url du type:
Message1250_Page5_TitreMessage.php
Sachant qu'un titre ne contient pas le caractère "_" j'ai essayé les règles suivantes, mais sans succès:
Code: Tout sélectionner
^Message([0-9]+)_Page([0-9]+)_(.*)\.php$ message.php?msg=$1&page=$2 [L]

^Message([0-9]+)_Page([0-9]+)_([^_]+)\.php$ message.php?msg=$1&page=$2 [L]


En fait la règle marche mais n'a pas l'effet escompté à savoir que j'ai une redirection vers le début du message (page 0). Mon autre règle de redirection pour un sujet sans numéro de page marche, mais pas celle là.
Est ce quelqu'un a une solution?

Merci d'avance


Formation recommandée sur ce thème :

Formation URL Rewriting et sites dynamiques : apprenez comment mettre en place la réécriture d'URL, comment optimiser vos URL et profiter de vos pages dynamiques pour booster votre référencement. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

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