2012-03-15 8 views
3

RackでRack Canonical Hostミドルウェア(https://github.com/tylerhunt/rack-canonical-host)を使用して、すべてのルート要求(example.comはwww.example.comになります)にwwwを強制します。しかし、訪問者が私たちのアプリの有効なサブドメインにアクセスしようとしている場合、私たちは明らかにwwwを強制したくありません。次に、ミドルウェアの使用例を示します。Rails/Rack:canonical_hostミドルウェアから要求パラメータを取得する

Rails.application.config.middleware.use Rack::CanonicalHost do 
    # the following return value will be used to set the canonical host 
    'www.example.com' 
end 

これは多少静的なものであり、問​​題です。しかし、私がリクエストパラメータ(例えば、サブドメイン、ドメインなど)にアクセスした場合、それらに対してチェックを行い、それに応じて(必要な場合にのみ)リダイレクトすることができます。

誰でも任意のポインタがありますか?

答えて

3

このブロック

Rails.application.config.middleware.use Rack::CanonicalHost do |params| 
    puts "PATH_INFO #{params['PATH_INFO']}" 
end 
のためのパラメータを指定してください
関連する問題