首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >rails 3: https重定向,但仅针对一个(或多个)特定域名

rails 3: https重定向,但仅针对一个(或多个)特定域名
EN

Stack Overflow用户
提问于 2011-07-12 04:18:17
回答 1查看 499关注 0票数 2

我的应用程序有面向用户和面向公众的页面,可以通过不同的子域user.example.com和public.example.com进行访问

我有一个user.example.com的ssl证书,当用户通过https进来时,一切都很好。

我知道如何重定向到我的应用程序使用的任何域名的https,但不是特定的域名。

但是,如果有人进入http://user.example.com,我想重定向到https://user.example.com,而不是为他们可能进入的其他子域(或多个域名)做任何特殊的重定向。

在rails中,有没有一种方法可以将来自某个特定子域的所有请求重定向到https?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-13 11:27:03

最好的地方是你的web服务器(例如Apache,nginx等)。配置。如果你没有权限访问它,那么用ApplicationController编写一个与request.hostrequest.ssl?进行比较的before_filter,例如:

代码语言:javascript
复制
def redirect_user_subdomain_to_https
  if 'user.example.com' == request.host && !request.ssl?
    redirect_to request.url.gsub(/^http/, 'https')
    return false
  end
end
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6656014

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档