Grails 是否了解子域(即 subdomain.domain.com)?我没有在 manual 中看到它的讨论。 .这纯粹是一个应用服务器/网络服务器问题吗?可以静态或动态绑定(bind)到 grails Controller 中吗?
最佳答案
对于 Java Web 应用程序,访问哪个主机并不重要。
在我建议的最简单的情况下,您只需使用编写一个过滤器,它总是会放置一些请求变量,如下所示:
def filters = {
all(controller:'*', action:'*') {
before = {
if (request.serverName.contains(".")) {
def clientName =
request.serverName.substring(0, request.serverName.indexOf("."))
request.currentClient = Client.findByClientName(clientName) // e.g.
}
}
}
}
然后在任何地方您都可以查看
request.currentClient
对于当前访问的子域。但是,如果它变得更复杂,请查看一些用于 grails 的 Multi-Tenancy 插件。
关于Grails 和子域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9242527/