URL Rewriting et PHP
17 messages • Page 1 sur 2 • 1, 2
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
URL Rewriting et PHP
Bonjour à tous,
J'ai URL Rewrité (nouveau verbe!
) mon site web. Donc j'envois en parametre une variable pour une page php donnée. Ensuite, je crée une deuxième règle de réécriture pour la meme page, et celle ci ne marche pas...
Exemple :
RewriteRule ^index-(.+)\.html$ /index.php?var1=$1 [L]
RewriteRule ^index-(.+)-(.+)\.html$ /index.php?var1=$1&var2=$2 [L]
Est-ce deja possible de créer deux règles pour une meme page php ou il faut obligatoirement créer une deuxième page pour la seconde règle ?
J'ai URL Rewrité (nouveau verbe!
Exemple :
RewriteRule ^index-(.+)\.html$ /index.php?var1=$1 [L]
RewriteRule ^index-(.+)-(.+)\.html$ /index.php?var1=$1&var2=$2 [L]
Est-ce deja possible de créer deux règles pour une meme page php ou il faut obligatoirement créer une deuxième page pour la seconde règle ?
Re: URL Rewriting et PHP
mikl194 a écrit:Est-ce deja possible de créer deux règles pour une meme page php ou il faut obligatoirement créer une deuxième page pour la seconde règle ?
Oui c'est possible, et dans ton cas, il faut que inverse tes 2 regles je pense.
dorian53 a écrit:Oui dans ce cas il faut inverser car les règles sont confuses.
Confuse... tu voulais dire logique je pense :
Comme une variable peut-être vide, le serveur ne tiens pas compte du nombre d'arguments et pointe sur la première réecriture disponible.
Oui, c'est ok !! En inversant les variables ca marche nickel !
Merci
Par contre j'avais une autre petite question,
Est-ce qu'il est possible d'envoyé une variable à déja une page réécrite ?
Exemple:
Page réécrite : site-accueil.html
Page réécrite + var : site-accueil.html?var=1
Merci
Merci
Par contre j'avais une autre petite question,
Est-ce qu'il est possible d'envoyé une variable à déja une page réécrite ?
Exemple:
Page réécrite : site-accueil.html
Page réécrite + var : site-accueil.html?var=1
Merci
KOogar a écrit:dorian53 a écrit:Oui dans ce cas il faut inverser car les règles sont confuses.
Confuse... tu voulais dire logique je pense :
Comme une variable peut-être vide, le serveur ne tiens pas compte du nombre d'arguments et pointe sur la première réecriture disponible.
Non confuse, la 1ère règle capture tout avant la 2ème (qui est donc inutile dans ce sens).
Comme une variable peut-être vide, le serveur ne tiens pas compte du nombre d'arguments pour ne pas allouer de la mémoire inutilement et pointe sur la première réecriture disponible.
Cela ne te semble pas logique qu'un serveur cherche à économiser ses ressources ??
La règle :
Dans le fichier .htaccess, il faut placer les redirections en ordre décroissant par nombre d'arguments quand il s'agit du même fichier pointé.
Cela ne te semble pas logique qu'un serveur cherche à économiser ses ressources ??
La règle :
Dans le fichier .htaccess, il faut placer les redirections en ordre décroissant par nombre d'arguments quand il s'agit du même fichier pointé.
dorian53 a écrit:KOogar a écrit:dorian53 a écrit:Oui dans ce cas il faut inverser car les règles sont confuses.
Confuse... tu voulais dire logique je pense :
Comme une variable peut-être vide, le serveur ne tiens pas compte du nombre d'arguments et pointe sur la première réecriture disponible.
Non confuse, la 1ère règle capture tout avant la 2ème (qui est donc inutile dans ce sens).
KOogar a écrit:La règle :
Dans le fichier .htaccess, il faut placer les redirections en ordre décroissant par nombre d'arguments quand il s'agit du même fichier pointé.
C'est ce qu'on dit depuis le début avec bgdc, regarde son premier post et dis-moi si la règle est respectée... (j'ai rien compris à ton intervention)
Ces règles sont confuses, car la 1ère n'est pas assez précise, son .* empêche la seconde règle d'exister, s'il aurait pu la faire plus précise (donc moins confuse) pas de soucis.
Exemple, ce cas peut-être juste.
- Code: Tout sélectionner
RewriteRule ^index-([0-9]+)\.html$ /index.php?var1=$1 [L]
RewriteRule ^index-(.+)-(.+)\.html$ /index.php?var1=$1&var2=$2 [L]
De tout façon, on est d'accord depuis le début.
dorian53 a écrit:Exemple, ce cas peut-être juste.
- Code: Tout sélectionner
RewriteRule ^index-([0-9]+)\.html$ /index.php?var1=$1 [L]
RewriteRule ^index-(.+)-(.+)\.html$ /index.php?var1=$1&var2=$2 [L]
si tu pointes une url du type :
index-10-20.html
il pointera sur la premiere redirection :
RewriteRule ^index-([0-9]+)\.html$ /index.php?var1=$1 [L]
et ne prendra pas en compte le second argument. Ton code sera mal interpreté.
faite le test
L'ecriture correct :
- Code: Tout sélectionner
RewriteRule ^index-(.+)-(.+)-(.+)-(.+)\.html$ /index.php?var1=$1&var2=$2&var3=$3&var4=$s4 [L]
RewriteRule ^index-(.+)-(.+)-(.+)\.html$ /index.php?var1=$1&var2=$2&var3=$3 [L]
RewriteRule ^index-(.+)-(.+)\.html$ /index.php?var1=$1&var2=$2 [L]
RewriteRule ^index-([0-9]+)\.html$ /index.php?var1=$1 [L]
KOogar a écrit:si tu pointes une url du type :
index-10-20.html
il pointera sur la premiere redirection :
RewriteRule ^index-([0-9]+)\.html$ /index.php?var1=$1 [L]
et ne prendra pas en compte le second argument. Ton code sera mal interpreté.
Non je ne crois pas, ce masque [0-9] indique des numériques et non pas le tiret.
KOogar a écrit:La règle reste la même quelque soit les REGEXs.
Tu l'as trouve confuse car tu ne l'as pas comprise.
Allume ton serveur et fait des tests STP. Merci.
Enjoy life ;- )
KOogar
KOogar a écrit:si tu pointes une url du type :
index-10-20.html
il pointera sur la premiere redirection :
RewriteRule ^index-([0-9]+)\.html$ /index.php?var1=$1 [L]
et ne prendra pas en compte le second argument. Ton code sera mal interpreté.
Si ce qui tu mets là fonctionne, explique-moi comment tu fais s'il te plait ?
Sinon, je crois qu'il te manque un tiret...
dorian53 a écrit:Non je ne crois pas, ce masque [0-9] indique des numériques et non pas le tiret.
Avec ça [0-9-] c'est mieux.
Ca part dans tous les sens la ! Vous énervez pas les gars !
Donc je le disais, confus ou pas, ca marche tres bien comme ca :
RewriteRule ^index-(.+)-(.+)\.html$ /index.php?var1=$1&var2=$2 [L]
RewriteRule ^index-(.+)\.html$ /index.php?var1=$1 [L]
Par contre j'avais une autre petite question,
Est-ce qu'il est possible d'envoyé une variable à déja une page réécrite ?
Exemple:
Page réécrite : site-accueil.html
Page réécrite + var : site-accueil.html?var=1
Et, le [0-9] marche, peut etre mieux comme ca le [0-9-], mais en meme temps qu'est-ce qui est mieux entre quelque chose qui marche et quelque chose qui marche ?
Par contre le tiret entre le 0 et le 9 n'a rien à voir avec celui de la barre d'adresse, c'est simplement pour lui signaler que c'est du numérique...
Donc je le disais, confus ou pas, ca marche tres bien comme ca :
RewriteRule ^index-(.+)-(.+)\.html$ /index.php?var1=$1&var2=$2 [L]
RewriteRule ^index-(.+)\.html$ /index.php?var1=$1 [L]
Par contre j'avais une autre petite question,
Est-ce qu'il est possible d'envoyé une variable à déja une page réécrite ?
Exemple:
Page réécrite : site-accueil.html
Page réécrite + var : site-accueil.html?var=1
Et, le [0-9] marche, peut etre mieux comme ca le [0-9-], mais en meme temps qu'est-ce qui est mieux entre quelque chose qui marche et quelque chose qui marche ?
Par contre le tiret entre le 0 et le 9 n'a rien à voir avec celui de la barre d'adresse, c'est simplement pour lui signaler que c'est du numérique...
mikl194 a écrit:Ca part dans tous les sens la ! Vous énervez pas les gars !
Moi j'suis Zen et j'emploie le conditionnel plus haut, au cas où, hein on sait jamais (...) Voir...
mikl194 a écrit:Donc je le disais, confus ou pas, ca marche tres bien comme ca :
RewriteRule ^index-(.+)-(.+)\.html$ /index.php?var1=$1&var2=$2 [L]
RewriteRule ^index-(.+)\.html$ /index.php?var1=$1 [L]
Evidement que ça marche :) Voir...
mikl194 a écrit:Et, le [0-9] marche, peut etre mieux comme ca le [0-9-], mais en meme temps qu'est-ce qui est mieux entre quelque chose qui marche et quelque chose qui marche ?
Le plus optimisé, le plus performant.
mikl194 a écrit:Par contre le tiret entre le 0 et le 9 n'a rien à voir avec celui de la barre d'adresse, c'est simplement pour lui signaler que c'est du numérique...
Tout à fait ! Toi tu as compris. Voir...
mikl194 a écrit:Par contre j'avais une autre petite question,
Est-ce qu'il est possible d'envoyé une variable à déja une page réécrite ?
Tu ne mets pas [L] à la fin de ta règle pour continuer la ré-écriture.
17 messages • Page 1 sur 2 • 1, 2
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 :
- Tutoriel URL Rewriting
- Suite de l'article sur le fichier .htaccess : l'URL rewriting
- l'URL Rewriting expliqué aux débutants
- Optimiser le référencement d'un forum phpBB : réécriture d'URL
- 3ème partie de l'article .htaccess : les réécritures conditionnelles
- L'URL Rewriting expliqué aux débutants
- Le référencement de pages PHP
- Guide d'optimisation des redirections pour le référencement
- Design de WRI version 3
- Aperçu des différents types de redirection
- url rewriting sur url php a point
- url rewriting en php
- url rewriting .fr a la place .php
- url rewriting : .htm ou .php
- asp => php + url rewriting
- url rewriting par php
- Url rewriting .html en .php
- URL Rewriting php en htm
- URL Rewriting et session PHP
- URL Rewriting HTM --> PHP
- url rewriting, et easy php
- url rewriting de .php en .html
- prb url rewriting côté PHP
- URL rewriting avec Easy PHP 1-8
- Url rewriting et failles de sécurité PHP
- Analyse de popularité
Cet outil vous permet d'analyser en détails la "popularité" de votre site sur Google. En plus du nombre de liens pris en compte par Google, il calcule le pourcentage de liens internes parmi tous les liens, et il affiche les premières URL trouvées. - Transformer des simples citations de votre site en liens
Cet outil vous permet de trouver des pages citant votre site mais ne faisant pas (encore) de lien. Il suffira parfois d'un simple mail pour transformer cette simple citation en lien (backlink).
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités






le forum