![根据主机名进行 Apache 重定向](https://linux22.com/image/502283/%E6%A0%B9%E6%8D%AE%E4%B8%BB%E6%9C%BA%E5%90%8D%E8%BF%9B%E8%A1%8C%20Apache%20%E9%87%8D%E5%AE%9A%E5%90%91.png)
我有多个主机名解析到一台机器,例如:
- build.mydomain.com
- www.mydomain.com
- jira.mydomain.com
- 我的域名
是否可以设置 apache 以将请求重定向到每个不同的主机名?
例如:
- build.mydomain.com -> build.mydomain.com:8111,
- www.mydomain.com -> www.mydomain.com:8080
- 我的域名.com -> www.我的域名.com:8080
DNS 记录设置为全部指向同一台机器,我只想根据主机名重定向到正确的端口。
干杯,
编辑:
机器是 Debian 和 Apache2
编辑2:
<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>
答案1
您是否正在运行多个 Apache 实例,每个实例都监听不同的端口?为什么?虚拟主机将处理所有事情。
答案2
答案3
实际上,我怀疑使用重定向是否是您要尝试执行的操作的成功策略。我建议使用 mod_proxy 创建一个反向代理,它将隐藏您构建系统的方式。
如果可以选择的话,我会使用更轻量、更方便配置的东西,比如 Perlbal。