Настройка HTACCESS в подкаталоге

Настройка HTACCESS в подкаталоге

У меня в главном каталоге есть файл htaccess, который перенаправляет все каталоги верхнего уровня в файл PHP.

-> /Lochпошёл бы в/profile.php?username=Loch

Но у меня также есть подкаталог, назовем егоtest

Мне нужно правило test, которое гласит: «Все подпути моего каталога на самом деле являются переменными GET».

Например, ссылка на/test/hello/hi

На самом деле стоит пойти/test/receiver.php?dataset=hello&action=hi

Однако когда я использую следующие правила в файле htaccess в каталоге /test/, это не работает (я получаю ошибку 500).

RewriteBase /

RewriteEngine On
RewriteRule ^(.*?)/(.*?)/?$ /receiver.php?dataset=$1&action=$2
RewriteRule ^(.*?)/?$ /receiver.php?dataset=$1

Надеюсь, я предоставил достаточно информации, пожалуйста, помогите! Спасибо.

решение1

Ваши регулярные выражения недействительны. *и ?оба являются квантификаторами, которые применяются к предыдущему символу, и поэтому *?не имеют смысла. Вероятно, вы хотите это:

RewriteRule ^(.+)/(.+)/?$ /receiver.php?dataset=$1&action=$2
RewriteRule ^(.+)/?$ /receiver.php?dataset=$1

Связанный контент