2016-07-21 15 views
1

私はRuby on Railsに組み込まれたWebサイトとWordPressで構築されたブログを持っています。メインサイトのURLはexample.com、ブログのURLはblog.example.comです。サブドメインのブログとは対照的に検索エンジンのインデックスサイトとディレクトリブログの設定のため、example.com/blog/anythingはURLに含まれるスラッシュまたはパラメータの数に関係なくblog.example.com/anythingにリダイレクトされるように永続的なリダイレクトを実装したいと考えています。だから、ブログの後に1つのディレクトリのみが存在する場合でも、example.com/blog/a/b/c/d/e?google=trueはこれまでのところRailsルート:ワイルドカードルートをリダイレクト

に次の作品をリダイレクトする必要があります。

get '/blog/:what', to: redirect('http://blog.codeundercover.com/%{what}') 

は、私は、しかし、関係なく、/blog後に来るもののテキストの仕事にこれを必要としています。これはどうすればいいですか?

+0

私は、これは私がレールルータに扱うと何かではないと思います。これはサーバーレベルで処理する必要があります。 –

答えて

0

あなたのルートはワイルドカードルートを使用していません。代わりに、それはRails Routing Guideがあなたの代わりにWildcard Globbingを使用したいと思うStatic Segment

といいものです:

get '/blog/*what', to: redirect('http://blog.codeundercover.com/%{what}'), constraints: { what: /.*/ } 
+0

試してみましたが、1つのディレクトリでしか動作しません。 – Philip7899

+0

@ Philip7899正規表現の制約を追加してみてください。私は私の答えを編集しました。 –

関連する問題