OpenLiteSpeed: получить последнюю часть URL как параметр GET с правилами перезаписи

Я хочу получить последнюю часть несуществующего URL, а затем передать его в качестве параметра GET. Пример: http://example.com/store/20 должен загрузить http://example.com/store?id=20

Я использовал следующий ответ из этого: Получить последнюю часть URL в качестве параметра GET

но кажется, что он не работает с OpenLiteSpeed, так как я получаю 404 Not Found.

Я также добавил косую черту в начале шаблона правила cf. https://openlitespeed.org/mediawiki/index.php/Help:Rewrite_Rule_Differences, однако без разницы.

То есть когда я использую

RewriteRule ^/language/(.*)$ index.php? L =$1 
под виртуальным хостом> переписать, я получаю 404 при доступе к http://example.com/foo/bar/language/de/ где браузер должен загружать http://example.com/foo/bar/index.php?l=de Я включил переписать и перейти по символической ссылке, так что это действительно вызывает головную боль.

1 ответ

Решение
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^language/(.*)$ index.php?l=$1 [QSA]

от

https://example.com/language/en

в

https://example.com/index.php?l=de

Попробуйте этот подход.

С наилучшими пожеланиями,

Другие вопросы по тегам