Выражение .*
соответствует обоим var1
и var1/var2
, поэтому первое правило применяется к обоим.
Таким образом, вы должны указать, что первое правило соответствует только var1
. Это можно сделать, заменив .
(любой символ) на [^/]
(любой символ, кроме /
). Итак, попробуйте это:
RewriteRule ^page/([^/]+)$ ./page.php?var1=$1
RewriteRule ^page/([^/]+)/([^/]+)$ ./page.php?var1=$1&var2=$2
Редактировать Вы также можете написать это в одном правиле:
RewriteRule ^page/([^/]+)(/([^/]+))?$ ./page.php?var1=$1&var2=$3