У меня есть это правило:
RewriteRule ^(panel|admin|site)/([A-Za-z0-9]+?)/(scripts|assets)/(.*)$ Project/$2/Public/$3/$1/$4 [L]
Идея состоит в том, чтобы разрешить доступ к публичным активам, поскольку они существуют внутри модулей кода.Единственная проблема заключается в том, что для схемы именования требуется регистр заголовка (предположим, это невозможно изменить).Следовательно, запрос:
/site/users/scripts/myscript.js
возвращает 404, но:
/site/Users/scripts/myscript.js
работает.
Я попытался использовать mod_speling для решения проблемы с обсадной колонной,однако mod_speling выполняет полное перенаправление, а не внутреннее, поэтому URL-адрес конечного пользователя меняется на:
/Project/Users/Public/scripts/myscript.js
Что не годится.Это означает, что моя структура каталогов несколько открыта, и это означает, что мне нужно дополнительное правило перезаписи, чтобы пройти через это.
Есть ли способ обработать заглавные буквы в mod_rewrite более изящно, т.е. без использования RewriteMap?(Необходимо сохранить все в .htaccess)
В качестве альтернативы, есть ли способ изменить mod_speling для использования внутреннего перенаправления?