跳至內容 跳至搜尋

Action Dispatch AssumeSSL

透過終止 SSL 的負載平衡器進行代理時,轉發的請求會顯示為 HTTP,而不是應用程式的 HTTPS。這會讓重新導向和 Cookie 安全性目標為 HTTP,而不是 HTTPS。此中間件會讓伺服器假設代理已經終止 SSL,而請求確實是 HTTPS。

方法
C
N

類別公開方法

new(app)

# File actionpack/lib/action_dispatch/middleware/assume_ssl.rb, line 11
def initialize(app)
  @app = app
end

執行個體公開方法

call(env)

# File actionpack/lib/action_dispatch/middleware/assume_ssl.rb, line 15
def call(env)
  env["HTTPS"] = "on"
  env["HTTP_X_FORWARDED_PORT"] = "443"
  env["HTTP_X_FORWARDED_PROTO"] = "https"
  env["rack.url_scheme"] = "https"

  @app.call(env)
end