- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个域 app.mydomain.com,它使用 A 记录映射到公共(public) IP(来自属于 mysub.jelastic.dogado.eu 的 tomcat 服务器)
我已经配置了 SSL 自定义证书,所有 HTTPS 请求都运行良好。
我需要的是我的应用程序只使用 HTTPS,所有 HTTP 请求都被重定向到 HTTPS,
因此,我以这种方式配置了 spring 安全插件(我的应用程序上的 1.2.7.4):
grails.plugins.springsecurity.secureChannel.useHeaderCheckChannelSecurity = true
grails.plugins.springsecurity.portMapper.httpPort = 8080
grails.plugins.springsecurity.portMapper.httpsPort = 8443
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'
grails.plugins.springsecurity.auth.forceHttps = true
grails.plugins.springsecurity.secureChannel.definition = [
'/**': 'REQUIRES_SECURE_CHANNEL'
]
最佳答案
X-Forwarded-Proto header 仅在您的环境中有负载均衡器(或使用共享解析器,但因为您使用的是在这种情况下无法应用的自定义 SSL 证书)时才设置。
如果您的环境中没有负载均衡器,这就是检查不起作用的原因 - 因为根本没有设置这些 header 。
如果您确实有负载均衡器,则对 Tomcat 的所有请求都将定向到端口 80(通过端口转发重定向到 8080);包括发送到 https 的请求(因为负载均衡器在这种情况下执行“SSL 卸载”。因此,您正在 grails 规则(8743 和 X-Forwarded-Proto)中寻找不可能的组合。根据您的环境拓扑,您将拥有一个这些情况或其他情况,但不是两者兼而有之。
编辑:您还应该仔细检查您的 server.xml 以确保您有这个:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="443" />
redirectPort
值(value);它应该是 443,因为这是将发送到浏览器进行重定向的端口 - 使用负载均衡器(或 Jelastic 共享解析器)代理请求,浏览器需要在端口 443 上请求(即使 Tomcat SSL 连接器是在 8743 上配置 - 如果适用),因为代理使用标准端口编号(即 https://没有任何端口号 = 443)。
关于grails - jelastic grails 将 http 重定向到 https,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21738033/
我正在尝试设置 Jelastic 集群数据库,如 Setting Up Auto-Clusterization with Cloud Scripting 中所述但我在那里没有看到描述如何设置或检索集群
关闭。这个问题是opinion-based 。目前不接受答案。 想要改进这个问题吗?更新问题,以便 editing this post 可以用事实和引文来回答它。 . 已关闭10 年前。 Improv
我正在着手部署 4 个共享公共(public)数据库的 Java 网络应用程序。我想知道在 Jelastic 平台下执行此操作的最佳方案是什么: 5 个环境,5 个节点(4 个 tomcat 和 1
我有一个包含 26mb war 文件的项目,其中 25mb 是库 jar。有没有办法不必每次都重新部署这些 jar。 我注意到在 Jelastic tomcat 目录中,有 war 文件,然后是 wa
我已经在 JELASTIC.com 上部署了我的 java web 应用程序,一切都很顺利。 现在我想将我的域映射到运行我的应用程序的 jelastic 服务器。我引用了文档并添加了 CNAMe
如何获取 environment placeholders显示在 Docker 容器内? 文档似乎并没有明确说明可以在哪里使用它们。我尝试在节点环境中设置这些内容,如添加到此问题的 JPS 文件中所示
昨天我在 webhosting.net 的 Jelastic v2.2.2 上获得了一个试用帐户,并配置了一个最少 0 个 cloudlets 的环境(最多 8 个,即全部动态,无保留)。然后我部署了
如何通过SSH连接到Jelastic中的Apache服务器? 我搜索过高和低,但是找不到正确的答案。 谢谢 最佳答案 Jelastic当前不提供SSH-几个月后,它将添加到即将发布的版本中。 我需要S
我正在运行一个 jelastic 设置来托管多个 Rails 应用程序。 在 Rails 中,store configuration in the environment 很常见.尤其是 secret
我正在学习java中的服务器发送事件,为此我使用了一个简单的示例。我使用的是 Windows 7、Java 1.7、Tomcat 7、Eclipse Indigo。我创建了一个servlet(SseS
我打算实现用户配置文件功能,起初我找到了一个上传照片的示例,并将其保存到应用程序文件夹,如 home\jelastic\app\my_folder但有两个问题: 1) 如果我需要更新应用程序并上传新版
我在 mysql 中使用 jelastic,问题是,为什么 mysql 节点在闲置时使用 350+mb 的 RAM(3 个 cloudlets)?我有另一个 Postgresql 环境,它在闲置时也只
我在 jelastic 环境中创建了 glassfish 服务器。现在我可以将我的应用程序导入(上传和部署)到其中。 问题是:如何从服务器导出(下载到计算机)部署的应用程序。 最佳答案 就您而言,软件
是否可以在从 GIT 更新应用程序源代码时不停止 nodejs 应用程序? 目前 Jelastic 在从 GIT 获取文件之前停止服务器: Stopping nodejs server: [PM2]
我已经创建了一个Grails应用程序,并且该应用程序正在顺利完成,并且我已经与各种云提供商(例如Cloud Foundry,Heroku,App Engine等)进行了测试。最后,我选择了Jelast
我有一个Grails 2.2.1应用程序,带有邮件插件1.0.1。 当我在本地运行应用程序(grails dev run-app)时,通过Gmail smtp服务器的邮件传递工作正常,但在生产服务器(
尝试将我的grails应用程序部署到jelastic环境并配置正确的TomEE应用程序服务器以及与activemq相关的所有插件,我在服务器上遇到以下异常: INFO: For help or mor
我有一个运行动态 Web 项目的 Tomcat/Eclipse。这包括一个已知的好的 .war 作为它的主要代码库。邮件.jar 是mail.1.4.5.jar。 在本地使用时,如果配置正确,该设置可
我有一个在 Jelastic 上运行的应用程序。基于Java的Web应用程序在Glassfish上运行,数据库服务器是MySql。 我在Netbeans上开发了该项目,在本地机器(土耳其Windows
我在 Dogado Jelastic 云中有一个 Tomcat 7 实例(Jelastic 平台版本是 2.5.2)。我还有一个 Bamboo,它每晚都会在此 Tomcat 7 实例上部署两个应用程序
我是一名优秀的程序员,十分优秀!