为什么ssl_requirement清除Flash? (Chrome Mac)

时间:2010-04-14 16:16:08

标签: ruby-on-rails ruby ssl

我正在使用ssl_requirement并且自设置以来,我的应用程序的Flash消息正在消失。

我已经稍微修改了插件,因为帐户可以选择将域映射到他们的帐户。在这种情况下,站点的非ssl区域应使用映射域,而ssl区域应使用子域:

def ensure_proper_protocol
  return true if ssl_allowed?
  if ssl_required? && !request.ssl?
    redirect_to "https://#{@account.subdomain}." + APP_CONF[:domain] + request.request_uri
    flash.keep
    return false
  elsif request.ssl? && !ssl_required?
    redirect_to "http://#{@account.sub_or_mapped_domain}" + request.request_uri
    flash.keep
    return false
  end
end

应用程序大致分为网站(前端)和管理员(后端)。管理区域的所有使用SSL,因此在AdminController中,我已使用以下内容覆盖ssl_required?

protected
def ssl_required?
  return false if RAILS_ENV == "test" || RAILS_ENV == "development"
  true
end

有趣的是,Flash消息在开发环境中运行良好,我绕过了需要SSL,但在我需要SSL的生产环境中,所有Flash都消失了。

有什么想法吗?

修改

我已经做了一些进一步的测试,并且可以补充一点,这个问题只发生在Mac上的Chrome中。 Windows上的其他Mac浏览器和Chrome正在按预期显示Flash消息。

这可能是Mac上Chrome的错误然后......?

0 个答案:

没有答案