将一个域的子域重定向到另一个域的子域

时间:2014-03-31 15:06:22

标签: .htaccess mod-rewrite redirect

我正在尝试重定向以下内容(分别):

http://sub.firstdomain.com/d/(all_files_and_folders)
http://sub.firstdomain.com/d2/(all_files_and_folders)

http://sub.seconddomain.com/d/(all_files_and_folders)
http://sub.seconddomain.com/d2/(all_files_and_folders)

第一个子域下还有其他文件和文件夹我不想重定向。以前这是有效的,但现在似乎Go Daddy改变了一些东西,而我所拥有的东西已经不再适用了。这是:

Options -Multiviews
Options +FollowSymLinks

RewriteEngine On

RewriteBase /

RewriteRule ^stats/(.+) /dstats/count.php?statspage=$1 [L,NC,QSA]
RewriteRule ^(.+)\.deb$  /dstats/count.php?file=$1.deb [L,NC,QSA]

RewriteCond %{HTTP_HOST} ^sub\.
RewriteRule ^(d2?)/(.*)$ http://sub.seconddomain.com/$1/$2 [L,R=301]

您可以忽略RewriteRule。它工作正常。我想确保我包含整个.htaccess文件以防万一。我的问题似乎是RewriteCond。

1 个答案:

答案 0 :(得分:0)

以下内容应该有效:

RewriteEngine On
Redirect 301 /d/ http://sub.seconddomain.com/d/
Redirect 301 /d2/ http://sub.seconddomain.com/d2/

以上内容只应重定向/d/子域的/d2/sub文件夹中的任何内容。

编辑:第二次尝试

RewriteEngine On
RewriteCond %{HTTP_HOST} ^sub1\.
RewriteRule ^(d2?)/(.*)$ http://sub2.mydomain.com/$1/$2 [L,R=301]