8791 sujets

Développement web côté serveur, CMS

Bonjour à tous,

Dans mon fichier htaccess j'ai :
Options +FollowSymlinks
RewriteEngine On

RewriteRule ^(.*)/(.*)\.htm$ index.php?page=$1&sub=$2 [L]
RewriteRule ^(.*)\.htm$ index.php?page=$1 [L]


En allant chercher /mon_dossier/ma_page.htm, j'obtiens :
page : redirect:/index.php
sub : ma_page

J'ai beau chercher ce qui ne va pas je ne comprend pas pourquoi page ne prend pas la valeur "mon_dossier".

Remarque j'ai déjà utilisé cette règle pour un autre site sans problème.
Il faudrait sans doute préciser tes expressions régulières : en effet, le joker . incluera n'importe quel caractère, y compris la barre oblique, ce qui peut être source de conflit entre tes deux règles de réécriture.
Options +FollowSymlinks
RewriteEngine On
RewriteRule ^([-_0-9a-z]+)/([-_0-9a-z]+)\.htm$ index.php?page=$1&sub=$2 [L]
RewriteRule ^([-_0-9a-z]+)\.htm$ index.php?page=$1 [L]