RewriteEngine on
RewriteRule ^([^/\.]+)\.html/?$ php/statePage.php?region_slug=$1 [L]
Две вещи, на которые следует обратить внимание:
Когда .
используется в синтаксисе перезаписи, он представляет любой символ.Итак, ваше текущее правило гласит: замените все, что НЕ является каким-либо символом, за которым следует '.html' .Чтобы обойти это, избегайте своей точки, как это \.
.Есть несколько специальных символов в синтаксисе переписывания, таких как этот.Было бы полезно обратить на них внимание.
Во-вторых, я не уверен, является ли это каноном перезаписи или нет, но я никогда лично не использовал косые черты в началеправило переписывания ранее, и это может повлиять или не повлиять на само правило.Любой пользователь с разъяснениями по этому поводу предлагается ответить.
РЕДАКТИРОВАТЬ: Следующие символы помечены как специальные символы в синтаксисе перезаписи (и все регулярные выражения, в этом отношении), и какнапример, необходимо экранировать с помощью обратной косой черты \
, чтобы использовать ее буквально - [\^$.|?*+()
Также, вы можете найти эту ссылку полезной для дальнейшего понимания правильного синтаксиса для обычноговыражения.