我认为这应该是相当容易的,但我不熟悉如何完成…
如何编写一个过滤器,检查当前请求是否针对某些子域,如果是这样,重定向到相同的URL,但在不同的子域?
即:blog.myapp.com/posts/1很好,但blog.myapp.com/products/123重定向到www.myapp.com/products/123.
我在想…
class ApplicationController < ActionController::Base before_filter :ensure_domain protected def ensure_domain if request.subdomain == 'blog' && controller_name != 'posts' redirect_to # the same url but at the 'www' subdomain... end end end
你怎么写这个重定向?
解决方法
ActionController::Redirecting#redirect_to允许你传递一个绝对的URL,所以最简单的做法是把它传递给一个如下所示:
redirect_to request.url.sub('blog','www')
原文地址:https://www.jb51.cc/ruby/272819.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。