【问题标题】:How to use force_ssl with a 302如何在 302 中使用 force_ssl
【发布时间】:2013-08-30 10:49:10
【问题描述】:

如果我把它放在 config/environments/production.rb 中,我的网站将变成所有使用 301 重定向的 SSL(永久)。

config.force_ssl = true

如何使用 302 重定向(临时)执行此操作?

RubyOnRails.org 说要使用 :status,但我仍然不确定如何在 production.rb 文件中执行此操作。 (这是 Heroku 上的 Rails 3.2.13。)

谢谢。

【问题讨论】:

    标签: ruby-on-rails ruby heroku ruby-on-rails-3.2


    【解决方案1】:

    你可以把它放到你的主控制器中

    class SessionController < ApplicationController
      force_ssl_redirect({:status => :found})
    
    def new
        # Non-SSL access will be redirected to SSL
      end
    end
    

    【讨论】:

    • 好的,那么这是另一个问题...... production.rb 中的 'config.force_ssl = true' 和 application_controller.rb 中的 'force_ssl' 有什么区别?我的意思是,rails 如何以不同的方式处理每个请求?
    • 如果您在配置中添加它,它将全局启用该选项,但将其包含在控制器中只会为该控制器操作启用它。它可以让您更好地控制哪些操作应该起作用,哪些不应该起作用。
    • :found 有什么作用?在线文档是否在某个地方?非常感谢您的帮助。
    • 找到你想要的发送状态 302。查看此链接codyfauser.com/2008/7/4/…,如果它真的对您有帮助,请投票给答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-18
    • 2011-12-06
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 2013-10-08
    相关资源
    最近更新 更多