Возможно, вам лучше передать параметры URL в сценарий и выполнить остальную часть обработки, поскольку это даст вам большую гибкость и вы будете иметь дело с Perl, а не усложняете свои правила mod_rewrite. Нечто подобное в вашем .htaccess
файле должно помочь:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /path/to/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^request(/.*)?$ /path/to/index.pl [L]
</IfModule>
Директивы RewriteCond
предназначены для предотвращения перезаписи путей к существующим файлам и каталогам. Если вы должны удалить их, убедитесь, что путь к index.pl
не переписан, или mod_rewrite будет зацикливаться при каждом запросе.
Затем вы можете захватить все $ENV{REQUEST_URI}
внутри вашего index.pl
, разбить строку на слешах и проверить и соответствующим образом назначить свои аргументы.
Примечание: я не советую использовать index
для пути запроса, потому что конфигурация Apache по умолчанию может переопределить это ключевое слово (как это происходит в моем случае).