我刚刚设置了一个 Ubuntu 服务器Tomcat7和Apache2。
Apache 正在运行端口 80,Tomcat 开启端口 8080。我现在想做的是将某些子域重定向到 Tomcat。
mydomain.com => Apache root
www.mydomain.com => Apache root
wp.mydomain.com => Apache folder Wordpress
admin.mydomain.com => Tomcat project AdminTool
api.mydomain.com => Tomcat project WebService
用户在与网站交互时不应该输入/不应该看到任何端口号(只是admin.mydomain.com
看不到)。admin.mydomain.com:8080
我知道有几个问题问的是类似的问题,我也读了一些似乎对我的问题很重要的关键词(虚拟主机,代理人,...)但这是我第一次使用 Linux,而其他问题不够详细,无法让我理解这些东西是如何工作的。
谢谢你!
答案1
您需要为每个想要响应不同名称(admin、wp、api)的位置创建一个虚拟主机。“www”和mydomain.com应该使用默认配置,只需确保您有一个指向主机的www的CN记录。
wp.mydomain.com 虚拟主机几乎同样简单,只需更改其“位置”即可。
对于管理员和 API,要获取 tomcat 安装 mod_proxy 并为管理员配置 vhost,如下所示:
# mod_proxy setup.
ProxyRequests Off
ProxyPass /webapps http://localhost:8080
ProxyPassReverse /webapps http://localhost:8080
<Location "/webapps/admin">
Order allow,deny
Allow from all
</Location>