将不存在的子域重定向到主域的目录

时间:2015-12-28 20:09:29

标签: apache .htaccess mod-rewrite redirect

我目前为各种项目使用了多个子域,但是想将它们移动到我主站点的目录中。

我想删除这些子域,并将浏览它们的人重定向到我的主站点中的新文件位置。为此,我希望将所有不存在的子域重定向到我的主站点中的子域。 我不想重定向现有的子域名

我目前有以下文件夹结构:

/
|---example.com (the main site)
|---blog.example.com (this subdomain will stay)
|---foo.example.com (example subdomain to move)
|---bar.example.com (as above)
...

并希望将foobar目录移至example.com/projects/fooexample.com/projects/bar

所以我会:

/
|---example.com (the main site)
|    |---projects
|         |---foo
|         |---bar
|         ...
|
|---blog.example.com
...

我在根文件夹中尝试了以下.htaccess:

RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} ^(.*)\.example\.com
RewriteRule ^(.*)$ http://example.com/projects/%1/$1 [L,NC,QSA]

但这只会重定向现有的子域名;即blog.example.com但不是foo.example.com。此外,这会将sub.example.com重定向到example.com/projects/sub/sub.example.com/,而不会按预期重定向到example.com/projects/sub/

我对.htaccess文件没有太多经验,所以任何帮助都会非常感激。欢呼声。

0 个答案:

没有答案