2011-09-14 14 views
0

私の新しいアプリでは、リダイレクト301を使用することができます。古いURLを新しいURLにリダイレクトする必要があります。私は私のルートでentred このRails redirect 301

match "/traslochi_puglia/index.htm", :to => redirect("/preventivo/90-traslochi-in-puglia") 

を提出し、それが正常に動作しますが、この

match "/trasloco_casa_abitazione.htm", :to => redirect("/3-trasloco-casa") 

が動作しない理由を私は理解できません。このパターン "/some_path/page.htm"を持つ古いURLはすべて正常に動作しますが、 "page.htm"では動作しません。何かヒント? ありがとう

+0

として=>:すべての前のフロントエンドリダイレクト –

答えて

0

ご質問に記載されている特定の問題のトラブルシューティングをご希望の場合は、routes.rbファイル全体を確認する必要があります。この情報がなければ、私の最初の推測はこれです:

典型的なルートパターンは、/controller/actionまたは/controller/:id/actionまたはそれらのいくつかの組み合わせです。上に示したパターンで、routes.rbファイルに名前付きルートがないと仮定すると、指定したルートはコントローラを指し示しますが、アクションは指しません。したがって、特定のリソースのURLに似ていると思われる/3-trasloco-casaというルートを、コントローラのアクションよりも具体的に作成していない限り、のアプリケーションはを実行するアクションを認識しません。

コマンドラインでrake routesを実行すると(アプリケーションで認識されるルートパターンの一覧が表示されます)、次にルート認識を使用してトラブルシューティングを行うことで、ルーティングの問題の原因を簡単に調べることができますこの質問にこの答えに概説されているよう:、=>「フロントエンドの#ショー」:私はダム、私はこの試合を置く「ID /」:よ

Recognize routes in rails console Session