将整个站点重定向到子文件夹

Redirect entire site to a sub folder

我正在尝试使用以下重定向命令将我的整个站点重定向到根目录中的子文件夹。

Redirect 301 / http://example.com/folder/

但是,当我打开网站时,它被重定向到类似 http://www.example.com/folder/folder/folder/folder/folder/folder/folder...

我是不是做错了什么?

是的,您正在重定向任何以 / 开头的内容,所以当然包括 /folder/ 并且它一直在重定向。您不能将整个网站重定向到它本身的一部分而不排除该部分。

改用这个:

RewriteEngine on
RewriteCond %{REQUEST_URI} !^/folder/
RewriteRule ^(.*)$ /folder/ [NE,R=301,L]

它将重定向任何不在 /folder/ 中的内容。

要仅重定向主页,请改用此方法:

RewriteEngine on
RewriteRule ^$ /folder/ [R=301,L]