https://example.com/public
https://example.com/public/faq.php
https://example.com
https://example.com/faq.php
RewriteEngine On
Options +FollowSymLinks
RewriteRule ^$ public/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ public/$1 [L]
此规则效果很好,但如果有人访问“https://example.com/public/”或“https://example.com/public/faq.php”,它不会重定向
我已经找到了解决这个问题的方法。如果直接访问公共目录,我添加了以下代码来重定向。
RewriteCond %{THE_REQUEST} /public [NC]
RewriteRule .* / [L,R]