【发布时间】:2011-08-23 09:14:10
【问题描述】:
我在我的 Windows 主机文件中定义了不同的主机,每个项目版本(rc1、rc2 等)一个主机 我想为每个版本创建一个虚拟主机,这样我就可以直接重定向到它的子目录,例如:
pp15.mv => http://localhost/mv/pp15/.....
pp16.mv => http://localhost/mv/pp16/.....
此外,我需要将主机 ppX.mv 重定向到自动登录网址,类似于 /mv_dbname.php?login=testlogin&mdp=202cb962ac59075b964b07152d234b70
所以,最后,我想在我的网址栏中输入:
http://pp15.mv
并被重定向到
http://pp15.mv/mv_dbname.php?login=testlogin&mdp=202cb962ac59075b964b07152d234b70
在我的虚拟主机文件中,我有这样的东西:
<VirtualHost *:80>
ServerName pp15.mv
DocumentRoot "D:\apache\htdocs\mv\pp15"
<Directory "D:\apache\htdocs\mv\pp15">
AllowOverride All
Allow from All
</Directory>
RewriteEngine On
RewriteRule ^/index.php /myvisitv3_dbname.php?login=johsmi&mdp=202cb962ac59075b964b07152d234b70 [R]
RewriteRule ^(/)?$ /myvisitv3_dbname.php?login=johsmi&mdp=202cb962ac59075b964b07152d234b70 [R]
</VirtualHost>
第一次重定向效果很好,但是如果我尝试直接重定向主机,我会收到重定向错误(发生了太多重定向)
有人有想法吗?
谢谢你。
【问题讨论】:
-
只看那个虚拟主机,您只为域 pp15.mv 上的请求设置了重写规则。您是否尝试访问除此之外的域的重定向?据我所知,您仍然需要为其他域提供虚拟主机(或至少是别名),但我可能错了。
-
我只尝试从 pp15.mv 域访问,我没有列出我拥有的任何 vhost,仅一个例如,另一个完全一样。
标签: apache2 redirect virtual-hosts