我目前有一个正在开发的应用程序,我正在云中使用(Jelastic)。我已将 SSL 证书添加到我的云环境中,并且希望现在能够在某些页面上使用 https。我已经实现了以下方法:
方法一:
grails.plugins.springsecurity.secureChannel.definition = [
'/login/**': 'REQUIRES_SECURE_CHANNEL'
]
方法二:
grails.plugins.springsecurity.secureChannel.definition = [
'/login/**': 'REQUIRES_SECURE_CHANNEL'
]
grails.plugins.springsecurity.secureChannel.useHeaderCheckChannelSecurity = true
grails.plugins.springsecurity.secureChannel.secureHeaderName = 'X-Forwarded-Proto'
grails.plugins.springsecurity.secureChannel.secureHeaderValue = 'http'
grails.plugins.springsecurity.secureChannel.insecureHeaderName = 'X-Forwarded-Proto'
grails.plugins.springsecurity.secureChannel.insecureHeaderValue = 'https'
因此,对于方法 1,当您转到 HTTP 中的索引页面然后尝试转到登录页面时,它会部分起作用,您将看到一条错误消息:
Firefox has detected that the server is redirecting the request for this address in a way that will never complete.
然而,方法 2 似乎根本不起作用,当我转到 HTTP 上的登录页面时,它并没有像我预期的那样重定向我,而且似乎在 HTTP 上工作,这很奇怪。
正如我提到的,这个解决方案托管在 Jelastic 中,所以不确定这是否会导致一些问题,但提供的任何帮助都会很棒。
提前致谢