子域代理将所有指向单个服务器的内容传递给
我有 2 个应用程序托管在端口 8080 上的单个 apache tomcat 上 >
http://mydomain.com:8080/application1
http://mydomain.com:8080/application2
我想在它们前面运行一个 apache 代理具有以下行为 >
http://mydomain.com/* (apache2) -> http://mydomain.com:8080/application1/* (tomcat)
http://subdomain.mydomain.com/* (apache2) -> http://mydomain.com:8080/application2/* (tomcat)
我现在得到的最好的是两台具有不同IP的机器,并相应地路由域和子域。
理想情况下,我希望 apache 代理和 2 个应用程序位于同一台计算机上...
任何具有出色 DEVOps 技能的人都可以提供帮助吗?
I have 2 applications hosted on a single apache tomcat on port 8080
>
http://mydomain.com:8080/application1
http://mydomain.com:8080/application2
I would like to run an apache proxy in front of BOTH of them with the following behaviour
>
http://mydomain.com/* (apache2) -> http://mydomain.com:8080/application1/* (tomcat)
http://subdomain.mydomain.com/* (apache2) -> http://mydomain.com:8080/application2/* (tomcat)
The best I have got right now is 2 machines with different IPs and routing the domain and subdomains correspondingly.
Ideally I want the apache proxy and the 2 apps to be on the SAME machine...
Can anyone with kick arse DEVOps skills assist?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
除了 @Jon Lin 的回答之外,还可以考虑使用 ProxyPassReverse,以防万一您的应用程序进行任何重定向。它使 Apache 能够正确响应 URL(有关 ProxyPassReverse 的更多信息)。它看起来像这样:
我希望它有帮助。
In addition to @Jon Lin answer, consider using
ProxyPassReverse
also, just in case your app do any redirects. It makes Apache correct URL's on responses (More about ProxyPassReverse). It will look like that:I hope it helps.
在 mydomain.com (apache) 的虚拟主机配置中,您需要
在 subdomain.mydomain.com (apache) 的虚拟主机配置中,您需要
两个配置文件都应该打开同一台机器,甚至同一个文件。有关如何设置的一些示例,请参阅VirtualHost Examples。
In the virtualhost config for mydomain.com (apache), you need
In the virtualhost config for subdomain.mydomain.com (apache), you nede
Both config files should be on the same machine, and even the same file. See VirtualHost Examples for some examples on how this is setup.