[problème] probleme de récriture dynamique
6 messages
• Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
- y.berges
- Nouveau WRInaute

- Messages: 3
- Inscription: 24 Avr 2008
[problème] probleme de récriture dynamique
Salut a tous j'ai essayer de bien lire le tuto de webrankinfo
voici mon htaccess
alors mon RewriteRule ^essai\.html$ /essai.php fonctionne !
mais le reste ne réagis absolument pas ....
c'est cette url
http://www.lebbb.org/article2.php?idsou ... rticle=557
ca c'est pour réécrire l'index.php
et ca c'est pour certaines pages
ici http://www.lebbb.org/menu.php?idsection=1
pourquoi j'ai qu'une ecriture qui marche qu'ai je loupé !
Merci d'avance
voici mon htaccess
- Code: Tout sélectionner
# Le serveur doit suivre les liens symboliques :
Options +FollowSymlinks
# Activation du module de réécriture d'URL :
RewriteEngine on
# test d'écriture :
RewriteRule ^essai\.html$ /essai.php
#--------------------------------------------------
# Règles de réécriture d'URL :
#--------------------------------------------------
RewriteRule ^article-([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /article2.php?idsouscat=$1&idsection=$2&idcat=$3&idarticle=$4 [L]
RewriteRule ^article-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /article.php?idsouscat=$1&idsection=$2&idcat=$3 [L]
RewriteRule ^index\.html$ /index.php
RewriteRule ^exposition\.html$ /menu.php?idsection=1
alors mon RewriteRule ^essai\.html$ /essai.php fonctionne !
mais le reste ne réagis absolument pas ....
- Code: Tout sélectionner
RewriteRule ^article-([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /article2.php?idsouscat=$1&idsection=$2&idcat=$3&idarticle=$4 [L]
c'est cette url
http://www.lebbb.org/article2.php?idsou ... rticle=557
ca c'est pour réécrire l'index.php
- Code: Tout sélectionner
RewriteRule ^index\.html$ /index.php
et ca c'est pour certaines pages
- Code: Tout sélectionner
RewriteRule ^exposition\.html$ /menu.php?idsection=1
ici http://www.lebbb.org/menu.php?idsection=1
pourquoi j'ai qu'une ecriture qui marche qu'ai je loupé !
Merci d'avance
-

webmasterlamogere - WRInaute passionné

- Messages: 1874
- Inscription: 17 Déc 2006
ca marche bien :
-http://www.lebbb.org/exposition.html
-http://www.lebbb.org/article-1-1-15-557.html
-http://www.lebbb.org/index.html
-http://www.lebbb.org/exposition.html
-http://www.lebbb.org/article-1-1-15-557.html
-http://www.lebbb.org/index.html
- y.berges
- Nouveau WRInaute

- Messages: 3
- Inscription: 24 Avr 2008
oki je capte ...
mais quand je part du site les url ne sont pas réécritent
mon http://www.lebbb.org/article2.php?idsou ... rticle=557
reste bien http://www.lebbb.org/article2.php?idsou ... rticle=557
pourquoi il ne les réécrit pas tout le temps ?
mais quand je part du site les url ne sont pas réécritent
mon http://www.lebbb.org/article2.php?idsou ... rticle=557
reste bien http://www.lebbb.org/article2.php?idsou ... rticle=557
pourquoi il ne les réécrit pas tout le temps ?
-

webmasterlamogere - WRInaute passionné

- Messages: 1874
- Inscription: 17 Déc 2006
il faut modifier les liens sur tes pages pour mettre les nouveaux : c'est pas automatique
-

Toma - WRInaute discret

- Messages: 201
- Inscription: 18 Jan 2006
Tu confonds ré-écriture et redirection.
Pour le moment dans ton fichier .htaccess tu fais des ré-écritures. Et contrairement à ce que leur nom pourrait laisser croire ça ne change pas l'adresse dans la barre du navigateur. Ça dit juste à ton serveur de ne pas aller chercher (par exemple)
mais
Cette ré-écriture est invisible pour l'utilisateur. L'adresse du navigateur reste la même, elle est juste ré-écrite en interne.
Maintenant, toi ce que tu voudrais en plus c'est que les gens qui tapent l'ancienne adresse
ne voient plus cette adresse dans leur navigateur mais la nouvelle :
Pour cela il faut faire une redirection avec ton htaccess (ou en php) en utilisant toujour une règle de ré-écriture avec la deuxième url en entier (avec le http://) et avec [R=301,L] à la fin de la ligne.
Par exemple :
(cette ligne ne doit pas être correcte je suis pas très expérimenté en expressions rationnelles, mais tu dois voir l'idée)
Ici, comme la deuxième url est écrite en entier, l'ancienne adresse est remplacée par la nouvelle dans le navigateur. Et le code R=301 dit au navigateur qu'il y a bien redirection.
Mais il y a maintenant un gros problème car tu fais une boucle infinie sur ton serveur avec les ré-écritures et les redirections.
Pour éviter ça, il ne faut pas utiliser les anciens noms de variables dans tes ré-écritures. Par exemple pour les ré-écritures tu pourrais mettre :
Comme ça tu casses la boucle infinie. Bien sur, il faut que tu changes ton code php pour qu'il attende les nouveaux noms de variables et plus les anciens.
Pour résumer :
est redirigé vers
qui est ré-écrit en
Et ton fichier article2.php gère les variables truc_new et plus les variables truc.
Enfin, et même si ce n'est pas indispensable il faut que tu mettes les nouvelles (et belles) adresses dans les liens internes de ton site (pour éviter au serveur des redirections inutiles).
J'espère ne pas avoir dit trop de conneries.
Pour le moment dans ton fichier .htaccess tu fais des ré-écritures. Et contrairement à ce que leur nom pourrait laisser croire ça ne change pas l'adresse dans la barre du navigateur. Ça dit juste à ton serveur de ne pas aller chercher (par exemple)
- Code: Tout sélectionner
http://www.lebbb.org/article-1-1-15-557.html
mais
- Code: Tout sélectionner
http://www.lebbb.org/article2.php?idsouscat=1&idsection=1&idcat=15&idarticle=557
Cette ré-écriture est invisible pour l'utilisateur. L'adresse du navigateur reste la même, elle est juste ré-écrite en interne.
Maintenant, toi ce que tu voudrais en plus c'est que les gens qui tapent l'ancienne adresse
- Code: Tout sélectionner
http://www.lebbb.org/article2.php?idsouscat=1&idsection=1&idcat=15&idarticle=557
ne voient plus cette adresse dans leur navigateur mais la nouvelle :
- Code: Tout sélectionner
http://www.lebbb.org/article-1-1-15-557.html
Pour cela il faut faire une redirection avec ton htaccess (ou en php) en utilisant toujour une règle de ré-écriture avec la deuxième url en entier (avec le http://) et avec [R=301,L] à la fin de la ligne.
Par exemple :
- Code: Tout sélectionner
RewriteRule ^article2.php\?idsouscat=([0-9]+)&idsection=([0-9]+)&idcat=([0-9]+)&idarticle=([0-9]+) http://www.lebbb.org/article-$1-$2-$3-$3\.html$ [R=301,L]
(cette ligne ne doit pas être correcte je suis pas très expérimenté en expressions rationnelles, mais tu dois voir l'idée)
Ici, comme la deuxième url est écrite en entier, l'ancienne adresse est remplacée par la nouvelle dans le navigateur. Et le code R=301 dit au navigateur qu'il y a bien redirection.
Mais il y a maintenant un gros problème car tu fais une boucle infinie sur ton serveur avec les ré-écritures et les redirections.
Pour éviter ça, il ne faut pas utiliser les anciens noms de variables dans tes ré-écritures. Par exemple pour les ré-écritures tu pourrais mettre :
- Code: Tout sélectionner
RewriteRule ^article-([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /article2.php?idsouscat_new=$1&idsection_new=$2&idcat_new=$3&idarticle_new=$4 [L]
Comme ça tu casses la boucle infinie. Bien sur, il faut que tu changes ton code php pour qu'il attende les nouveaux noms de variables et plus les anciens.
Pour résumer :
- Code: Tout sélectionner
http://www.lebbb.org/article2.php?idsouscat=1&idsection=1&idcat=15&idarticle=557
est redirigé vers
- Code: Tout sélectionner
http://www.lebbb.org/article-1-1-15-557.html
qui est ré-écrit en
- Code: Tout sélectionner
http://www.lebbb.org/article2.php?idsouscat_new=1&idsection_new=1&idcat_new=15&idarticle_new=557
Et ton fichier article2.php gère les variables truc_new et plus les variables truc.
Enfin, et même si ce n'est pas indispensable il faut que tu mettes les nouvelles (et belles) adresses dans les liens internes de ton site (pour éviter au serveur des redirections inutiles).
J'espère ne pas avoir dit trop de conneries.
6 messages
• Page 1 sur 1
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 :
- probleme avec la recriture
- Probleme indexation site dynamique
- DREAMWEAVER Probleme cases à cocher dynamique
- Problème mis en forme tableau dynamique
- Problème formulaire dynamique avec AJAX
- problème avec menu dynamique sous firefox
- probleme de titre dynamique [vraiment pas résolut]
- Problème de redirection d'une page dynamique par htaccess
- problème dans l'affichage calendrier dynamique avec AJAX
- Problème de référencement avec des liens dynamique & XHT
- Gestion des langues et des sessions en PHP / MySQL
- Google rachète Trendalyser de gapminder.org
- Google va ouvrir un nouveau bureau dans le Michigan
- Vocabulaire du référencement : noms de domaine et URL
- Comment indexer une base de données via Google Webmaster Tools
- Le bêtisier 2009 du site WebRankInfo : les meilleures perles
- Cours de référencement Google par les spécialistes de Ranking Metrics
- Tutoriel URL Rewriting
Consultez la description détaillée des produits ou services de Google suivants : Google Street View
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité
