如何为子域提供来自不同目录的内容

时间:2011-02-04 22:09:23

标签: php .htaccess mod-rewrite

如何为虚拟子域提供来自不同目录的内容。

例如:http://www.website.comwww目录获取其内容。

for virtual.company.com我想提供/www/application目录中的内容。

我想保持url参数相同。

我已经创建了php文件来显示基于子域的自定义消息。但是我遇到了htaccess的问题,

简单来说,我只想从根目录以外的其他目录加载子域的内容。

3 个答案:

答案 0 :(得分:1)

试试这个:

RewriteCond %{HTTP_HOST} !^www\.company\.com
RewriteCond %{HTTP_HOST} ^([^.]+)\.company\.com$ [NC] 
RewriteRule ^(.*)$ /application/%1 [QSA,L]

答案 1 :(得分:0)

这听起来不是一个好主意,因为人们可以输入http://www.website.com/application,这可能会导致不必要的结果。我建议为virtual.company.com设置虚拟主机并将两者分开。

然而,这是可能的,它将是:

RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^virtual\.company\.com$ [NC]
RewriteRule ^(.*)$ http://www.company.com/application/$1 [R=301,L]

答案 2 :(得分:0)

设置指定的虚拟主机。

<VirtualHost *:80>
  ServerName sub.domain.com
  DocumentRoot "/path/to/sub/domain"
</VirtualHost>

<VirtualHost *:80>
  ServerName another.domain.com
  DocumentRoot "/path/to/another/sub/domain"
</VirtualHost>