我正在尝试在 apache 中设置一个动态虚拟主机,并使用目录别名指向每个域的不同路径。
这就是我想要实现的目标。
假设我有 2 个域名:
* www.domain1.com
* www.domein2.com
我希望两者都指向同一个 index.php 文件 (C:/cms/index.php)。现在最难的部分是...我希望目录或某些文件类型指向每个域的不同路径。
例子:
* www.domain1.com/layout -> C:/store/www.domain1.com/layout
* www.domain2.com/layout -> C:/store/www.domain2.com/layout
* www.domain1.com/image.png -> C:/store/www.domain1.com/image.png
* www.domain2.com/image.png -> C:/store/www.domain2.com/image.png
但是,管理目录应该再次指向所有网站的相同路径
* www.domain1.com/admin -> C:/cms/admin
* www.domain2.com/admin -> C:/cms/admin
有没有办法在 apache 2.2 中实现这种行为,而不必为每个新域创建虚拟主机条目?
答案1
尝试:
DocumentRoot "C:/store/"
<Directory />
....
RewriteEngine on
RewriteCond %{REMOTE_HOST} ^www.domain1.com$
RewriteRule (.*)$ /www.domain1.com/$1 [L]
RewriteCond %{REMOTE_HOST} ^www.domain2.com$
RewriteRule (.*)$ /www.domain1.com/$1 [L]
</Directory>
Alias /admin C:\cms\admin
<Directory "C:\cms\admin">
AllowOverride None
Order allow,deny
Allow from all
</Directory>
答案2
您可以尝试使用 VirtualDocumentRoot,有关更多信息,请阅读 apache 文档和示例