Bonsoir,
Je me bat avec mon .htaccess et je crois que pour aujourd'hui, il a gagné, car je m'y perd complètement.
Je ne vous explique pas tous, ce serait compliqué, mais en repartant de 0, voici le premier conflit que je rencontre.
J'ai deux règles de réécriture url-rewritting qui fonctionnent bien quand elles sont seules, mais lorsque j'ajoute des redirections 301 rien ne va plus.
Voici le code qui fonctionne :
Donc ça, ça marche.
Si je rajoute deux ligne [R=301] pour rediriger index.php et index.html vers la racine du site, comme ci-dessous. La deuxième règle ne fonctionne plus.
La page s'affiche correctement, mais l'url n'est pas réécrite dans la barre d'adresse du navigateur.
J'ai plusieurs R=301 à faire mais déjà la, en ajoutant index.html et index.php, ça plante.
Quelqu'un voit-il se qui ne va pas?
J'ai essayé de les mettre au début et a la fin mais j'ai le même résultats. La deuxième règles de réécriture plante.
En espérant avoir réussi a me faire comprendre.
Merci d'avance.
Je me bat avec mon .htaccess et je crois que pour aujourd'hui, il a gagné, car je m'y perd complètement.
Je ne vous explique pas tous, ce serait compliqué, mais en repartant de 0, voici le premier conflit que je rencontre.
J'ai deux règles de réécriture url-rewritting qui fonctionnent bien quand elles sont seules, mais lorsque j'ajoute des redirections 301 rien ne va plus.
Voici le code qui fonctionne :
Code:
#--------------------------------------------------
# Répertoire : /index/
#--------------------------------------------------
# Le serveur doit suivre les liens symboliques :
Options +FollowSymlinks
# Activation du module de réécriture d'URL :
RewriteEngine on
#--------------------------------------------------
# Règles de réécriture d'URL :
#--------------------------------------------------
RewriteRule ^(.*)-([0-9]*)-(.*)-([0-9]{2})\.html$ /region.php?titreurl=$1&id_parametre=$2®ion=$3&code_region=$4 [L]
RewriteRule ^([a-z]*-[a-z]*)-([0-9]{2})\.html$ /index.php?titreurl=$1&id_parametre=$2 [L]
Donc ça, ça marche.
Si je rajoute deux ligne [R=301] pour rediriger index.php et index.html vers la racine du site, comme ci-dessous. La deuxième règle ne fonctionne plus.
La page s'affiche correctement, mais l'url n'est pas réécrite dans la barre d'adresse du navigateur.
Code:
#--------------------------------------------------
# Répertoire : /index/
#--------------------------------------------------
# Le serveur doit suivre les liens symboliques :
Options +FollowSymlinks
# Activation du module de réécriture d'URL :
RewriteEngine on
#--------------------------------------------------
# Règles de réécriture d'URL :
#--------------------------------------------------
RewriteRule ^([a-z-]*)-([a-z-]*{2})-([0-9]{2})-([0-9]{2})\.html$ /region.php?titreurl=$1®ion=$2&id_parametre=$3&code_region=$4 [L]
RewriteRule ^([a-z-]*)-([0-9]{2})\.html$ /index.php?titreurl=$1&id_parametre=$2 [L]
RewriteRule index.html / [R=301,L]
RewriteRule index.php / [R=301,L]
J'ai plusieurs R=301 à faire mais déjà la, en ajoutant index.html et index.php, ça plante.
Quelqu'un voit-il se qui ne va pas?
J'ai essayé de les mettre au début et a la fin mais j'ai le même résultats. La deuxième règles de réécriture plante.
En espérant avoir réussi a me faire comprendre.
Merci d'avance.