如何在Google App Engine上制作Rails应用程序重定向到HTTPS

我已成功将我的Rails应用程序部署到Google App Engine(我的域也由Google托管),现在我想将任何人转到我的http://地址重定向到我的https://地址。

我已经使用app.yaml文件中的handlers元素找到了Python应用handlers的文档,并试图在我自己的文件中复制它。

我的app.yaml文件现在包含:

 handlers: - url: /.* script: config/application.rb secure: always redirect_http_response_code: 301 

但是我仍然可以在不重定向的情况下访问http://,我认为这是因为我通过了script: config/application.rb选项。 我不知道我应该使用哪个文件或者该文件应该包含在Rails应用程序中。 如果我没有传递script选项,则部署会中断。

如果您需要更多信息,请告诉我,并提前感谢您的帮助!

那么你可以通过app的config/environments/production.rb文件强制执行SSL,你只需要添加一行:

 Rails.application.configure do # Other code... config.force_ssl = true # add this line to force HTTPS on production end 

这将为您的应用程序做3件事,实际上:

  1. TLS重定向
  2. 安全cookie:设置cookie上的secure标志
  3. HTTP严格传输安全(HSTS)

有关应用程序配置的更多信息,请访问http://guides.rubyonrails.org/configuring.html

Interesting Posts