我想将我网站的所有网址重写(不重定向)到我网站的子目录。例如:
http://example.com/example
将加载以下内容:
http://example.com/public/example
但请求http://example.com/public
不加载来自public/public
但来自/
的内容。
我在SO上找到的答案要么通过重定向(我不想要)进行上述操作,要么不考虑上述特殊情况。
编辑:进一步澄清:
我希望我的网站上的每个请求都在public
文件夹下加载,但访问者无法看到。因此,请求http://example.com/index.php
将从http://example.com/public/index.php
加载文件。浏览器中的URL保持不变。
答案 0 :(得分:1)
请尝试以下规则:
RewriteEngine on
RewriteRule ^((?!public).+)$ /public/$1 [NC,L]
这将重写从root到/ public目录的所有请求。