.htaccess暂时移动子文件夹,然后永久重定向

时间:2014-09-09 13:46:32

标签: php apache .htaccess mod-rewrite redirect

我目前正在重建一个位于Server A的网站,并将新网站放在Server B上。

但是,Server A有一个目录forum/,必须将其全部移至Server B,但必须移至forum.example.com子域而不是forum/文件夹。

我需要能够使用.htaccess

执行以下操作

Server B:暂时将所有/forum/*个链接重定向到/forum-maintenance/

维护完成后:

Server B:将所有/forum/*个链接永久重定向到forum.example.com/$1

实施例

临时

example.com/forum/viewpost.php?id=1234 ==> example.com/forum-maintenance/

永久

example.com/forum/viewpost.php?id=1234 ==> forum.example.com/viewpost.php?id=1234

我需要两个.htaccess规则来实现这个目标吗?

1 个答案:

答案 0 :(得分:0)

您可以在维护期间root/.htaccess

中使用此规则
RewriteEngine On

RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteRule ^forum/ /forum-maintenance/? [L,R=302]

发布后维护,您可以在root/.htaccess文件中使用此规则:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC]
RewriteRule ^forum/(.*)$ http://forum.example.com/$1 [L,R=301,NE]