Ruby on rails ssl_要求仅在生产和两页上失败

Ruby on rails ssl_要求仅在生产和两页上失败,ruby-on-rails,ssl,Ruby On Rails,Ssl,我有一个Rails 3.2应用程序,试图调试一个奇怪的ssl问题 我在整个应用程序中进行页面缓存,为了维护动态内容,我会发出ajax请求来更新某些方面 缓存的所有页面都应该仅由http请求。当发出ssl请求时,除了两个以外,其他所有节点都将重定向到http 问题是,这两个页面和无法重定向回http,刷新内容的ajax请求被取消。据我所知,它正在被取消,因为它将普通http视为不同的站点,并且不能在ssl下向不同的站点发出ajax请求 设置本地签名证书没有帮助。在开发过程中,这两个页面的作用是适当

我有一个Rails 3.2应用程序,试图调试一个奇怪的ssl问题

我在整个应用程序中进行页面缓存,为了维护动态内容,我会发出ajax请求来更新某些方面

缓存的所有页面都应该仅由http请求。当发出ssl请求时,除了两个以外,其他所有节点都将重定向到http

问题是,这两个页面和无法重定向回http,刷新内容的ajax请求被取消。据我所知,它正在被取消,因为它将普通http视为不同的站点,并且不能在ssl下向不同的站点发出ajax请求

设置本地签名证书没有帮助。在开发过程中,这两个页面的作用是适当的。我还使用了AWS ELB,其中ssl终止于负载平衡器,并转到端口80,这似乎也能正常工作

我每次都可以强制这两个页面重定向到http,但我更愿意深入了解这一点

我正在使用ssl_要求执行应用程序级重定向

我想知道这是怎么发生的。我已经梳理了我的代码库,但在应用程序级别上找不到任何可以实现这一点的东西。我不认为我的ApachevHost是完美的,但这两个页面并没有任何内容。有人知道这可能发生在堆栈中的什么地方吗

编辑:


最终意识到,由于页面被完全缓存,请求只会命中apache,而不会命中将被重定向的应用程序。这让我质疑为什么Ajax请求会被取消。Ajax请求被发送到同一个域,但没有加密。这难道不应该仅仅是对“不安全内容”的警告吗?我正在使用jQueryGetScript加载动态内容

好吧,这将成为愚蠢错误的历史记录,但我想我还是把它留给别人去帮助别人用谷歌搜索吧

简单的回答是,不允许通过ssl连接进行ajax调用。如果您的ssl_需求允许使用ssl_方法,请确保您调用的加载动态内容的ajax方法允许通过ssl。否则,请求将被取消,或者它将获得302重定向