两个站点/一个服务器中的两个域

时间:2014-01-19 18:24:32

标签: apache .htaccess mod-rewrite

我开始管理Apache Web服务器,但我的经验很少。我有两个网站,有两个不同的域名(a.com,b.com)。

A.com文件位于服务器根文件夹(/htdocs)上,我已经为该域配置了.htaccess文件。

B.com位于服务器根目录(/htdocs/b/)内的子文件夹中。

因此,根据“传入”请求域,我想以某种方式更改服务器上的文件夹(可能使用.htaccess?)。

我一直在阅读这方面的一些材料,例如this tutorialApache guide,此blog post,甚至此StackOverflow question,但到目前为止似乎没有任何效果

更改.htaccess是正确的做法吗?我可以在没有用户注意到文件夹已被更改的情况下执行mod_rewrite(将其保留为“b.com”而不是“b.com/b”)吗?

提前致谢!

1 个答案:

答案 0 :(得分:2)

您可以在DOCUMENT_ROOT/.htaccess文件中使用此代码:

RewriteEngine On

# if host is b.com
RewriteCond %{HTTP_HOST} ^(www\.)?b\.com$ [NC]
# silently forward to folder /b/ if not already /b/
RewriteRule !^b(/|$) /b%{REQUEST_URI} [L,NC]

PS:虽然最好更改VistualHost配置并将/htdocs/b/设置为DocumentRoot网站的b.com