创建到外部URL的rails路由

Chr*_*ris 46 routing ruby-on-rails

很多用户都会继续http://(rails app URL)/blog这样做,但我实际上并没有博客.我终于设置了一个Posterous博客,现在想要引导我的用户.有没有办法使用routes.rb配置它?有没有更好的方法不涉及编辑httpd.conf文件?

nil*_*nil 65

我知道这是旧的,所以如果其他人需要这个用于rails 4:

get "/blog" => redirect("http://example.com/blog")
Run Code Online (Sandbox Code Playgroud)

在Rails 4中使用get而不是Match,否则会出现Runtime错误


Mar*_*rth 62

取决于您使用的Rails版本.

Rails 3

# in routes.rb
match "/blog" => redirect("http://example.com/blog"), :as => :blog
Run Code Online (Sandbox Code Playgroud)

Rails 2

# in routes.rb
map.blog '/blog',
  :controller => "a_helper_controller",
  :action => "redirect_to_blog"

# in a_helper_controller.rb
def redirect_to_blog
  redirect_to "http://example.com/blog"
end
Run Code Online (Sandbox Code Playgroud)


小智 13

对于Rails 5:

得到'/故事',到:重定向('/ articles')

得到'/故事',到:重定向(' http://google.com ')

Rails指南源页面