我想将我的所有网站文件(甚至包括index.php)移到子目录中(对于exp:“abc”)
例如 前:
public_html
index.php
a.file
directory
an.other.file
...
在:
public_html
abc_directory
index.php
a.file
directory
an.other.file
...
我希望一切都能像之前一样工作,但我不想做任何重定向(可见)。
人们应该输入“http://myexmaplesite.com/directory/an.other.file/”并通过.htaccess apache为他们提供“http://myexmaplesite.com/abc_directory/directory/an.other.file/”但没有外部重定位(301,302等)
如何使用mod_rewrite将所有请求路由到子目录?
答案 0 :(得分:1)
像
这样的东西RewriteEngine On
RewriteBase /
RewriteRule ^(.*)$ directory/$1 [L,QSA]
答案 1 :(得分:1)
在文档根目录中尝试此mod_rewrite规则:
RewriteEngine on
RewriteRule !^directory/ directory%{REQUEST_URI} [L]
或者一般来说:
RewriteEngine on
RewriteCond $1 !^directory/
RewriteRule ^/?(.*) directory/$1 [L]
这应该甚至适用于服务器或虚拟主机配置。