2016-09-20 135 views
1

我正在尝试创建一个.htaccess文件,它将将域的文档根目录更改为我服务器上的子文件夹,而不会实际更改最终用户的URL。这里是什么,我试图做一个例子:将任何域的文档根目录更改为其自己的子目录

  • domain1.com会寻找网页内容中/domains/domain1.com但仍显示为domain1.com
  • domain2.com将在/domains/domain2.com中查找网页内容,但仍显示为domain2.com

每个域都将指向根目录/,所以我将.htaccess文件放在这里,/.htaccess

我不想将每个域都添加到.htaccess文件中,我希望它对每个域都遵循这种格式。


我尝试了解.htaccess并创建一个自己,但是,我似乎无法达到此目的。我现在所拥有的每个域都会重定向到它的子目录,并且会出现“太多重定向”的错误。

  • 即, domain1.com最终用户重定向到domain1.com/domains/domain1.com

这是.htaccess文件的内容:

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ 
RewriteRule ^(.*)$ /domains/%1 [L] 

回答

0

还不错,试试这个:

RewriteEngine on 
# remove www, externally for consistent domains 
RewriteCond %{HTTP_HOST} ^www\.(.+)$ 
RewriteRule .* http://%1/$0 [NS,L,R=301] 
# document root emulation 
RewriteCond %{HTTP_HOST} .+ 
RewriteRule ^(?!domains/[^/]+/).* domains/%0/$0 [NS,L]