使用.htaccess切换两个虚拟主机(使用httpd.conf配置)

时间:2011-05-19 12:53:31

标签: apache .htaccess virtualhost httpd.conf vhosts

我已为两个域www.domain1.com和www.domain2.com配置了两个虚拟主机:

<VirtualHost *>
    ServerName prod.domain.com
    ServerAlias www.domain1.com
    DocumentRoot /data/prod/web/
     DirectoryIndex index.php
     <Directory  "/data/prod/web">
           AllowOverride All
           Allow from All
     </Directory>
     Alias /sf /data/prod/lib/vendor/symfony/data/web/sf
     <Directory "/data/prod/lib/vendor/symfony/data/web/sf">
           AllowOverride All
           Allow from All
</VirtualHost>

<VirtualHost *>
    ServerName dev.domain.com
    ServerAlias www.domain2.com
    DocumentRoot /data/dev/web/
     DirectoryIndex index.php
     <Directory  "/data/dev/web">
           AllowOverride All
           Allow from All
     </Directory>
     Alias /sf /data/dev/lib/vendor/symfony/data/web/sf
     <Directory "/data/dev/lib/vendor/symfony/data/web/sf">
           AllowOverride All
           Allow from All
     </Directory>
</VirtualHost>

现在,我想用htaccess文件来切换指向域的文件夹:

之前

/ data / prod / web - &gt; www.domain1.com

/ data / dev / web - &gt; www.domain2.com

/ data / prod / web - &gt; www.domain2.com

/ data / dev / web - &gt; www.domain1.com

有可能吗?你能救我吗?

非常感谢

1 个答案:

答案 0 :(得分:0)

来自Apache documentation

DocumentRoot指令
描述:形成从Web可见的主文档树的目录
语法:DocumentRoot目录路径
默认值:DocumentRoot / usr / local / apache / htdocs
上下文:服务器配置,虚拟主机
状态:核心模块:核心

注意这里的粗体是什么......你无法从.htaccess文件中更改DocumentRoot。以下列出了所有可能的上下文值,FYI:

http://httpd.apache.org/docs/2.0/mod/directive-dict.html#Context