RewriteRule соответствует базовому пути / url
Я хотел бы, чтобы рерайтер соответствовал" базовому " url / пути моего сайта.
Мой базовый URL, когда-то в prod, будет чем-то вроде http://www.site.com
, но в настоящее время http://localhost/dev/site/
в dev. .htaccess
файл находится в папке "site".
В следующих примерах первый рерайтер-это проблема, и я не могу заставить его работать. 2-й и 3-й рерайтеры работают нормально. Мне нужно его довести до индекса.php?l = default&rte=index, если я достигну базового пути / URL.
Спасибо.
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^/$ index.php?l=default&rte=index [NC,L]
RewriteRule ^([a-zA-Z]{2})/$ index.php?l=$1&rte=index [NC,L]
RewriteRule ^([a-zA-Z]{2})/([a-zA-Z-]+)$ index.php?l=$1&rte=$2 [NC,L,QSA]
1 ответ:
Попробуйте следующие правила:
Options +FollowSymLinks -MultiViews RewriteEngine On RewriteRule ^/?$ index.php?l=default&rte=index [QSA,L] RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^ - [L] RewriteRule ^([a-zA-Z]{2})/?$ index.php?l=$1&rte=index [QSA,L] RewriteRule ^([a-zA-Z]{2})/([a-zA-Z-]+)/?$ index.php?l=$1&rte=$2 [QSA,L,QSA]