我有多个主机名parsing到一台机器,例如:
是否有可能设置Apache以redirect请求到每个不同的主机名?
例如:
DNSlogging设置为全部指向同一台机器,我只是想redirect到给定主机名的正确端口。
干杯,
编辑:
机器是Debian w / Apache2
EDIT2:
<VirtualHost *:80> ServerName www.mydomain.com ServerAlias mydomain.com redirect 301 / http://www.mydomain.com:8080/ </VirtualHost> <VirtualHost *:80> ServerName build.mydomain.com redirect 301 / http://build.mydomain.com:8111/ </VirtualHost>
你是否运行Apache的多个实例,每个都在不同的端口上监听? 为什么? 虚拟主机将照顾一切。
其实,我怀疑使用redirect是你正在尝试做什么的胜利策略。 我build议使用mod_proxy来创build一个反向代理,这将隐藏你已经build立你的系统的方式。
如果我有select的话,我会使用一些更轻巧,更方便的configuration,比如Perlbal。
遵循导致<If>指令的 规范主机名的文档:
<If "%{HTTP_HOST} == 'build.mydomain.com' && %{SERVER_PORT} -eq 80"> RedirectMatch permanent /.* http://build.mydomain.com:8111 </If> <If "%{HTTP_HOST} == 'www.mydomain.com' && %{SERVER_PORT} -eq 80"> RedirectMatch permanent /.* http://www.mydomain.com:8080 </If> ...