Вот мой .htaccess, чтобы переписать public / index.php. Я использую фреймворк Laravel.
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{THE_REQUEST} /(code|tmp) [NC] RewriteRule ^ - [L] RewriteRule ^((?!public/).*)$ public/$1 [L,NC] </IfModule>
Здесь можно получить доступ к папкам «code» и «tmp», как обычно.
Если я добавлю набор вложенных папок и добавлю htaccess по умолчанию Laravel для удаления public / index.php
<IfModule mod_rewrite.c> <IfModule mod_negotiation.c> Options -MultiViews </IfModule> RewriteEngine On # Redirect Trailing Slashes... RewriteRule ^(.*)/$ /$1 [L,R=301] # Handle Front Controller... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L] </IfModule>
Он не работает внутри вложенной папки.
Он работает хорошо, если у меня нет первого заданного .htaccess в корневом каталоге. Как только я дал свой .htaccess, он не работает.
Является ли .htaccess в корневом каталоге, вызывающем эффект для подпапки?
Если да, то как я могу исправить это
Примечание. Это вопрос, когда я получил .htaccess ранее
Исключение .htaccess делает проблему в главной директории