Я пытаюсь перенаправить файлы index.php в корень /, я поискал и нашел несколько фрагментов кода, похожих на:
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://www.domain.com/$1 [R=301,L]
Однако это не сработает для поддоменов, пример ниже :
Кто-нибудь знает, как настроить указанный выше htaccess, чтобы он учитывал поддомен и перенаправлял их в соответствующее место?
например если пользователь посещает http://subdomain.domain.com/index.php , он переходит на http://subdomain.domain.com/
Бонусные баллы:
Is есть ли htaccess, который может просто применить это правило ко всем папкам?
Итак, для любой папки с index.php они будут просто перенаправлены в ее корень, например http://subdomain.domain.com/folder1/folder2/index.php автоматически перейдет на http://subdomain.domain.com/folder1/folder2/
Я основал следующий код на ответе @ ThinkingMonkey
RewriteRule ^(.*)index\.(php|html?)$ /$1 [R=301,NC,L]
Он перенаправляет URI, заканчивающиеся на index.php , index.htm или index.html - / . Работает и с подкаталогами.
Также обратите внимание на флаг NC
. Это делает его без учета регистра. Так что это работает, даже если URI указан в верхнем регистре, например INDEX.PHP .