我开始管理Apache Web服务器,但我的经验很少。我有两个网站,有两个不同的域名(a.com,b.com)。
A.com文件位于服务器根文件夹(/htdocs
)上,我已经为该域配置了.htaccess
文件。
B.com位于服务器根目录(/htdocs/b/
)内的子文件夹中。
因此,根据“传入”请求域,我想以某种方式更改服务器上的文件夹(可能使用.htaccess
?)。
我一直在阅读这方面的一些材料,例如this tutorial,Apache guide,此blog post,甚至此StackOverflow question,但到目前为止似乎没有任何效果
更改.htaccess
是正确的做法吗?我可以在没有用户注意到文件夹已被更改的情况下执行mod_rewrite(将其保留为“b.com”而不是“b.com/b”)吗?
提前致谢!
答案 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
。