Rails3系サブドメイン'www'に301リダイレクトさせるroutesの書き方

2014-05-07

背景


herokuで運用しているBoxToYouにて

任意のサブドメインおよびネイキッドドメインに対してSSLを使おうとしました。

調べてみるとネイキッドに対してはDNSにANAME/ALIASレコードという

特殊なレコードを登録する必要があることがわかりました。

トラフィック見てみるとネイキッドに直接アクセスしてくる人は

全体の1パーセントもいないので、ネイキッドへのリクエストに対しては

すべてwww.box2you.comに301リダイレクトさせることにしました。

メモ


瞬殺。

 constraints(:host => 'box2you.com') do
     root :to => redirect("https://www.box2you.com"), status:301
     match '/*path', :to => redirect {|params| "https://www.box2you.com/#{params[:path]}"}, status:301
end
#Rails