2012-04-27 10 views
2

私は、shopifyと同様の単一のruby on rails Webアプリケーションで複数の顧客ドメインのホスティングを許可しようとしています。 SSL証明書が必要になり、複数のIPが必要になります。これを行うにはどうしたらいいですか?各ドメインのApacheで新しいVirtualHostsを作成する機能を作成する必要がありますか?RoRアプリケーションで複数の顧客ドメインをホストしようとしています

答えて

0

ドメインをconfig/routes.rbの一部として使用するようにRailsを設定する方法はいくつかありますが、最近私がHTTP用に最近使用した方法の1つは、Rackミドルウェアとして書き直し、rack-rewrite gemを使用してコードを挿入し、名前空間を指しています。私はあなたがHTTPSの同様の出発点を使うことができると思います。

Gemfileに入れる:

gem 'rack-rewrite' 

は、config/initializers/0_rack_rewrite.rbとして、初期化子として、それを必要と何も前にロードを追加します。

Unshopify::Application.config.middleware.insert_before(Rack::Lock, Rack::Rewrite) do 
    rewrite %r{.*}, "/unshopify$&", :not => %r{/assets.*}, :host => "unshopify.example.com" 
end 

config/routes.rbに入れる:

namespace :unshopify, :path => 'unshopify' do 
    resource :statics, :only => [:home] 

    root :to => 'statics#home' 
end 

:pathは必要ありません。これは名前空間のデフォルトと同じです。

もちろん、同じ名前空間への書き換えを指すことも、名前空間をまったく持たないこともできますし、他の方法に基づいてロジックを実行することもできます。 rack-rewriteのドキュメントにはあらゆる種類の楽しみが記載されています。

+0

ありがとうございます。これを撃つだろう。 :) – Fretta

関連する問題