Mes règles d'écriture entrent en conflit....
3 messages • Page 1 sur 1
Consultez la formation URL Rewriting et sites dynamiques de WebRankInfo / Ranking Metrics
Mes règles d'écriture entrent en conflit....
Bonjour,
J'ai une question à propos de mon fichier de réécriture d'url que je décris ci-dessous.
########
# Admin : dans le cas ou mon url est de la forme
# www.monsite.com/admin/variable1/variable2/
# je redirige vers www.monsite.com/admin/variable1/index.p ... =variable2
########
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$
RewriteCond %{REQUEST_URI} admin/.*
RewriteRule ^admin/(.*)/(.*)/ /admin/$2/index.php?Competition=$1 [QSA,L]
########
# Tournois : dans le cas où on n'est pas en admin, j'ai une règle spécifique
# pour le répertoire tournoi
########
RewriteCond %{REQUEST_URI} !admin/.*
RewriteRule ^(.*)/tournois/([0-9]*)/ /php/tournois/classement.php?IdTournoi=$2&Competition=$1 [QSA,L]
RewriteRule ^(.*)/tournois/index.php php/tournois/index.php?Competition=$1 [QSA,L]
########
# Divers : si on n'est pas dans le répertoire admin ou include
# www.monsite.com/variable1/variable2/
# je redirige vers www.monsite.com/php/variable2/index.php ... =variable1
########
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$
RewriteCond %{REQUEST_URI} !admin/.*
RewriteCond %{REQUEST_URI} !include/.*
RewriteRule ^(.*)/(.*)/ php/$2/index.php?Competition=$1 [QSA,L]
########
# Divers : si on n'est pas dans le répertoire admin ou include
# www.monsite.com/variable1/
# je redirige vers www.monsite.com/index.php?Competition=variable1
########
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$
RewriteCond %{REQUEST_URI} !admin/.*
RewriteCond %{REQUEST_URI} !include/.*
RewriteRule ^(.*)/ index.php?Competition=$1 [QSA,L]
Mon souci : je constate que le [L] ne joue pas son rôle puisque les 2 derniers blocs (divers) rentrent en conflit avec ma règle sur les tournois, écrites plus haut.
Pourriez-vous m'indiquer ce qui vous semble poser souci dans mon cas ?
Je peux, si vous le souhaitez, fournir l'url directe du site pour exposer mieux mon souci.
Merci de votre retour.
Julien
J'ai une question à propos de mon fichier de réécriture d'url que je décris ci-dessous.
########
# Admin : dans le cas ou mon url est de la forme
# www.monsite.com/admin/variable1/variable2/
# je redirige vers www.monsite.com/admin/variable1/index.p ... =variable2
########
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$
RewriteCond %{REQUEST_URI} admin/.*
RewriteRule ^admin/(.*)/(.*)/ /admin/$2/index.php?Competition=$1 [QSA,L]
########
# Tournois : dans le cas où on n'est pas en admin, j'ai une règle spécifique
# pour le répertoire tournoi
########
RewriteCond %{REQUEST_URI} !admin/.*
RewriteRule ^(.*)/tournois/([0-9]*)/ /php/tournois/classement.php?IdTournoi=$2&Competition=$1 [QSA,L]
RewriteRule ^(.*)/tournois/index.php php/tournois/index.php?Competition=$1 [QSA,L]
########
# Divers : si on n'est pas dans le répertoire admin ou include
# www.monsite.com/variable1/variable2/
# je redirige vers www.monsite.com/php/variable2/index.php ... =variable1
########
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$
RewriteCond %{REQUEST_URI} !admin/.*
RewriteCond %{REQUEST_URI} !include/.*
RewriteRule ^(.*)/(.*)/ php/$2/index.php?Competition=$1 [QSA,L]
########
# Divers : si on n'est pas dans le répertoire admin ou include
# www.monsite.com/variable1/
# je redirige vers www.monsite.com/index.php?Competition=variable1
########
RewriteCond %{REQUEST_URI} (/|\.htm|\.php|\.html|/[^.]*)$
RewriteCond %{REQUEST_URI} !admin/.*
RewriteCond %{REQUEST_URI} !include/.*
RewriteRule ^(.*)/ index.php?Competition=$1 [QSA,L]
Mon souci : je constate que le [L] ne joue pas son rôle puisque les 2 derniers blocs (divers) rentrent en conflit avec ma règle sur les tournois, écrites plus haut.
Pourriez-vous m'indiquer ce qui vous semble poser souci dans mon cas ?
Je peux, si vous le souhaitez, fournir l'url directe du site pour exposer mieux mon souci.
Merci de votre retour.
Julien
Précision :
le souci en fait c'est que l'url http:/www.monsite.com/admin/ligue1/tournois/
pointe sur http://www.monsite.com/php/tournois/
au lieu de http://www.monsite.com/admin/tournois/index.php
Je ne comprends vraiment pas, la 1ère règle devrait s'appliquer (et le L devrait faire que tout s'arrete ensuite, or c'est l'avant dernière règle qui entre en conflit)
Règle qui devrait s'appliquer
RewriteRule ^admin/(.*)/(.*)/ /admin/$2/index.php?Competition=$1 [QSA,L]
Or c'est celle ci qui s'applique
RewriteRule ^(.*)/(.*)/ php/$2/index.php?Competition=$1 [QSA,L]
Merci !
Julien
le souci en fait c'est que l'url http:/www.monsite.com/admin/ligue1/tournois/
pointe sur http://www.monsite.com/php/tournois/
au lieu de http://www.monsite.com/admin/tournois/index.php
Je ne comprends vraiment pas, la 1ère règle devrait s'appliquer (et le L devrait faire que tout s'arrete ensuite, or c'est l'avant dernière règle qui entre en conflit)
Règle qui devrait s'appliquer
RewriteRule ^admin/(.*)/(.*)/ /admin/$2/index.php?Competition=$1 [QSA,L]
Or c'est celle ci qui s'applique
RewriteRule ^(.*)/(.*)/ php/$2/index.php?Competition=$1 [QSA,L]
Merci !
Julien
Bonjour,
Mon souci venait de là :
En effet seule la 1ère ligne suivant la condition est fonction de cette condition
Il fallait donc mettre la condition avant chaque ligne.
Il doit y avoir une solution pour ne l'écrire qu'une fois je pense mais je ne la connais pas.
Par ailleurs je constate donc que le L n'arrete pas le "script" lorsque le règle est appliquée.
Julien
Mon souci venait de là :
- Code: Tout sélectionner
RewriteCond %{REQUEST_URI} !admin/.*
RewriteRule ^(.*)/tournois/([0-9]*)/ /php/tournois/classement.php?IdTournoi=$2&Competition=$1 [QSA,L]
RewriteRule ^(.*)/tournois/index.php php/tournois/index.php?Competition=$1 [QSA,L]
En effet seule la 1ère ligne suivant la condition est fonction de cette condition
Il fallait donc mettre la condition avant chaque ligne.
Il doit y avoir une solution pour ne l'écrire qu'une fois je pense mais je ne la connais pas.
Par ailleurs je constate donc que le L n'arrete pas le "script" lorsque le règle est appliquée.
Julien
3 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 :
- Accord commercial entre Google et l'agence Associated Press
- Optimiser le référencement d'un forum phpBB : réécriture d'URL
- L'URL Rewriting expliqué aux débutants
- L'avenir de la presse en ligne passe par un meilleur référencement
- Matt Cutts déclare la guerre au spamdexing en français (et autres langues)
- 10 règles pour optimiser son référencement sur Google
- Nouvelle version de Yahoo Site Explorer (août 2008)
- Suite de l'article sur le fichier .htaccess : l'URL rewriting
- WebRankInfo lance un forum de recherche de partenariats
- Google se rapproche de la Bourse
- Deux regles en conflit
- Conflit entre règles de rewriting (RewriteRule)
- Plusieurs regles qui rentrent en conflit...
- [Résolu] Conflit dans les régles de réécriture.
- [Résolu] Conflit entre 3 règles d'URL rewriting
- Besoin d'aide pour mes regles de réécriture...
- Conflit de rewriting ?
- conflit résultats
- Nom de domaine : conflit
- conflit noms de domaines ?
- problème de conflit en PHP
- Conflit Javascript/PHP
- conflit avec hébergeur
- conflit entre un redirect et 404
- Conflit htaccess et dossiers statiques?
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité


le forum