如何在Ruby on Rails中使用括号重定向URI

时间:2017-08-04 14:39:57

标签: ruby-on-rails ruby ruby-on-rails-4

我试图在Rails 4中进行重定向

get '/something)', to: redirect("/something", status: 301), format: false

这不起作用,因为括号用于optional parameters

错误是: Racc::ParseError parse error on value ")" (RPAREN)

我尝试了两种网址编码)并将其转发\)\\),但这些都不起作用。 从我的搜索来看,似乎没有人遇到它。这确实很奇怪,但有人在链接到我的网站时错误地添加了括号,现在我想将访问者重定向到正确的而不是404。

1 个答案:

答案 0 :(得分:1)

你可以这样做,

constraints(path: /something\)/)  do 
  get '/:path', to: redirect("/something", status: 301), format: false
end

但理想的方法是将此重定向放在您的Web服务器中(例如:nginx)