gpt4 book ai didi

apache - Grails urlmappings : Different responses for subdomain and domain root "/" possible?

转载 作者:行者123 更新时间:2023-12-02 15:31:25 24 4
gpt4 key购买 nike

我正在开发一个 grails 2.2.3 应用程序。这个应用程序有一个后端、一个营销网站和一些用户页面。

每个用户页面都应该在 username.domain.tld 上可用,营销站点在 domain.tld 和 www.domain.tld 上可用,后端在 domain.tld/backend 或 backend.domain.tld 上可用。

我已经实现了每个部分,但我的问题是我只有一个用于“/”的 URLMapping。如果我调用营销网站,我会得到营销 View 作为回应。如果我调用 username.domain.tld 我也会得到营销网站作为响应,但我希望我得到/user/page 作为响应。使用 username.domain.tld/user/page 我得到给定用户的正确响应(我有一个过滤器检查域名的 http header 并将子域名设置为 params.username)。

我必须做什么才能使用户页面子域的“/”下的用户页面正常工作?我是否需要将我的应用程序拆分为不同的应用程序(插件架构)?我应该做这样的事情吗? http://techsravi.blogspot.de/2011/05/managing-multiple-domain-and-sub-domain.html或者我应该用 Apache2 做一些 url 重写?

什么是我的问题的最佳和最干净的解决方案?

最佳答案

一种解决方案是将 Apache 配置与 ProxyPass 和 ProxyPassReverse 一起使用,以将某些 url “重定向”到 tomcat 中的另一个,并将其与不同的 VirtualHosts 混合。

<VirtualHost *:80>
ServerName username.domain.tld
ProxyPass / http://mycomputer:8080/user
ProxyPassReverse / http://mycomputer:8080/user
</VirtualHost>
<VirtualHost *:80>
ServerName www.domain.tld
ProxyPass / http://mycomputer:8080/
ProxyPassReverse / http://mycomputer:8080/
</VirtualHost>
<VirtualHost *:80>
ServerName backend.domain.tld
ProxyPass / http://mycomputer:8080/backend
ProxyPassReverse / http://mycomputer:8080/backend
</VirtualHost>

我还没有完全测试过这个,但在其他类似的情况下它可以工作,我们在这里经常使用它......

关于apache - Grails urlmappings : Different responses for subdomain and domain root "/" possible?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18944486/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com