comment ignorer le / final?
10 messages
• Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
- YvesB
- WRInaute impliqué

- Messages: 520
- Inscription: 11 Jan 2004
comment ignorer le / final?
Bonjour,
je souhaites faire passer mes parametres dans des dossiers du style :
www.mondomaine.com/para1/para2/para3/
pour :
www.mondomaine.com/?p1=para1&p2=para2&p3=para4
Mais 2 problemes : Les parametres ne doivent pas etre obligatoires, et le dernier "/" doit pouvoir etre oublié ....
Mon htaccess est comme cela :
RewriteEngine on
RewriteRule ^(.*)?/?(.*)?/?(.*)?/?$ index.php?p1=$0&p2=$1&p3=$2
Merci de votre aide
je souhaites faire passer mes parametres dans des dossiers du style :
www.mondomaine.com/para1/para2/para3/
pour :
www.mondomaine.com/?p1=para1&p2=para2&p3=para4
Mais 2 problemes : Les parametres ne doivent pas etre obligatoires, et le dernier "/" doit pouvoir etre oublié ....
Mon htaccess est comme cela :
RewriteEngine on
RewriteRule ^(.*)?/?(.*)?/?(.*)?/?$ index.php?p1=$0&p2=$1&p3=$2
Merci de votre aide
- ChezThierry
- WRInaute occasionnel

- Messages: 273
- Inscription: 21 Oct 2005
Si, comme je le comprends, tes paramètres sont optionnels mais que, s'il n'y en a qu'un, c'est obligatoirement p1, pour 2, obligatoirement p1 et p2, etc, alors tu peux faire comme ça :
- Code: Tout sélectionner
RewriteEngine on
RewriteRule ^(.+)/(.+)/(.+)/?$ index.php?p1=$1&p2=$2&p3=$3 [L]
RewriteRule ^(.+)/(.+)/?$ index.php?p1=$1&p2=$2 [L]
RewriteRule ^(.+)/?$ index.php?p1=$1 [L]
-

correiaj - WRInaute passionné

- Messages: 1110
- Inscription: 25 Avr 2005
Ou bien:
- Code: Tout sélectionner
RewriteEngine on
RewriteRule ^([^/]*)/?([^/]*)/?([^/]*)/$ index.php?p1=$1&p2=$2&p3=$3
- ChezThierry
- WRInaute occasionnel

- Messages: 273
- Inscription: 21 Oct 2005
Je viens de faire quelques essais chez moi (apache2 sous ubuntu breezy badger 5.10) :
Avec ces règles exactes :
Chez moi j'ai remplacé [L] par [L,R] pour voir le résultat directement dans la barre d'adresses
ça fonctionne pour les cas suivants :
-http://www.example.com/page1
-http://www.example.com/page1/
qui donnent -http://www.example.com/index.php?p1=page1
-http://www.example.com/page1/page2
-http://www.example.com/page1/page2/
qui donnent -http://www.example.com/index.php?p1=page1&p2=page2
-http://www.example.com/page1/page2/page3
-http://www.example.com/page1/page2/page3/
qui donnent -http://www.example.com/index.php?p1=page1&p2=page2&p3=page3
(Jai modifié par rapport à mon premier post parce qu'on avait p1=page1/ dans certains cas (le / final restait)
Es-tu sûr que ça ne fonctionne pas chez toi, ça ?
Avec ces règles exactes :
- Code: Tout sélectionner
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ index.php?p1=$1&p2=$2&p3=$3 [L]
RewriteRule ^([^/]+)/([^/]+)/?$ index.php?p1=$1&p2=$2 [L]
RewriteRule ^([^/]+)/?$ index.php?p1=$1 [L]
Chez moi j'ai remplacé [L] par [L,R] pour voir le résultat directement dans la barre d'adresses
ça fonctionne pour les cas suivants :
-http://www.example.com/page1
-http://www.example.com/page1/
qui donnent -http://www.example.com/index.php?p1=page1
-http://www.example.com/page1/page2
-http://www.example.com/page1/page2/
qui donnent -http://www.example.com/index.php?p1=page1&p2=page2
-http://www.example.com/page1/page2/page3
-http://www.example.com/page1/page2/page3/
qui donnent -http://www.example.com/index.php?p1=page1&p2=page2&p3=page3
(Jai modifié par rapport à mon premier post parce qu'on avait p1=page1/ dans certains cas (le / final restait)
Es-tu sûr que ça ne fonctionne pas chez toi, ça ?
- YvesB
- WRInaute impliqué

- Messages: 520
- Inscription: 11 Jan 2004
Quand je copie/colle ton htaccess, seul p1 recupere une valeur et c'est la valeur : 'index.php' !
si j'enleve le '?' a la fin de chaque regle,
RewriteRule ^([^/]+)/$ index.php?p1=$1 [L]
ca marche, mais probleme si je ne met pas le / a la fin de l'url,
cela ne marche pas...
si j'enleve le '?' a la fin de chaque regle,
RewriteRule ^([^/]+)/$ index.php?p1=$1 [L]
ca marche, mais probleme si je ne met pas le / a la fin de l'url,
cela ne marche pas...
- ChezThierry
- WRInaute occasionnel

- Messages: 273
- Inscription: 21 Oct 2005
C'est pas normal que tu retrouves index.php dans p1, ça veut dire une de ces deux choses :
- les règles sont appliquées 2 fois de suite, une fois pour créer l'URL avec index.php, et l'autre où p1 prends la valeur index.php, ce qui est impossible à cause du [L]
- tu appelles toi-même une url du style index.php, et la règle prends ça pour un nom de répertoire et reformule index.php?p1=index.php
Si tu me confirmes que tu n'as rien d'autre dans ton .htaccess que ces règles, on va essayer comme ça :
- les règles sont appliquées 2 fois de suite, une fois pour créer l'URL avec index.php, et l'autre où p1 prends la valeur index.php, ce qui est impossible à cause du [L]
- tu appelles toi-même une url du style index.php, et la règle prends ça pour un nom de répertoire et reformule index.php?p1=index.php
Si tu me confirmes que tu n'as rien d'autre dans ton .htaccess que ces règles, on va essayer comme ça :
- Code: Tout sélectionner
RewriteRule ^index.php$ - [L]
RewriteRule ^([^/]+)/([^/]+)/([^/]+)/?$ index.php?p1=$1&p2=$2&p3=$3 [L]
RewriteRule ^([^/]+)/([^/]+)/?$ index.php?p1=$1&p2=$2 [L]
RewriteRule ^([^/]+)/?$ index.php?p1=$1 [L]
- YvesB
- WRInaute impliqué

- Messages: 520
- Inscription: 11 Jan 2004
Ce coup si ... ca marche complementement ! Merci mille fois de ta percévérance. Et parce qu'un PR 5 vos mieux que 100 mercis, je ferait un lien sur ton site en profil quand mon site sera reoprérationnel.
Merci bonne soirée
(Merci aussi correiaj)
Merci bonne soirée
(Merci aussi correiaj)
- ChezThierry
- WRInaute occasionnel

- Messages: 273
- Inscription: 21 Oct 2005
J'essaye d'aider dans cette rubrique autant que faire se peut, puisque je suis fan de Perl et que j'ai l'habitude d'utiliser les regexp, ça me fait donc plaisir de me triturer un peu la cervelle pour répondre.
C'est néanmoins la première fois qu'on me propose de me remercier de cette façon, merci beaucoup à toi, surtout que mon pauvre petit blog tarde à trouver son public, une petite montée de PR pourrait peut-être l'aider
C'est néanmoins la première fois qu'on me propose de me remercier de cette façon, merci beaucoup à toi, surtout que mon pauvre petit blog tarde à trouver son public, une petite montée de PR pourrait peut-être l'aider
- YvesB
- WRInaute impliqué

- Messages: 520
- Inscription: 11 Jan 2004
Aucun probleme. Le lien et deja en place sur la page daccueil temporaire : www.afterdreams.com
10 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 :
- .htaccess pb de slash final
- Télécharger Google Chrome 4.0.249.78 Final
- liste ignorer
- [éch. de liens] [RPG - Final Fantasy]
- Ignorer le sous domaine
- Google semble ignorer mes modifs
- Ignorer des pages dynamique (aspx)
- Problème avec les répertoires sans le slash final
- pour phpbb final release je veux utiliser mysql !
- Moteur : liste des mots à ignorer
- Comment faire ignorer des zones de page pour Yahoo (robots-nocontent) - 03-05-2007
- Une check-list pour bien démarrer son référencement - 21-02-2007
- Utiliser des extensions Firefox non compatibles avec la dernière version - 11-02-2010
- GlobalWarming Awareness2007 : dommages collatéraux chez Wikipedia - 22-01-2007
- Le vainqueur du design WRI 2005 - 09-05-2005
- Nouveautés dans l'API Google Analytics (Septembre 2009) - 19-09-2009
- Gérer ses paramètres de tracking dans Google Webmaster Tools - 16-09-2009
- NTIC et éthiques : la valeur de l'information en ligne (rapport de DESS) - 23-01-2006
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités
