正しくない URL を routes.rb の 404 ページにリダイレクトするにはどうすればよいですか? ここで、2 つのサンプル コードを使用します。
# example 1
match "/go/(*url)", to: redirect { |params, request| Addressable::URI.heuristic_parse(params[:url]).to_s }, as: :redirect, format: false
# example 2
match "/go/(*url)", to: redirect { |params, request| Addressable::URI.heuristic_parse(URI.encode(params[:url])).to_s }, as: :redirect, format: false
しかし、「url」パラメーターでロシア語を使用しようとすると、最初の例では 500 ページ (不正な URI) が表示され、2 番目の例では stage.example.xn--org-yedaaa1fbbb/ にリダイレクトされます。
ありがとう