2012-01-02 6 views
1

私は各クライアントのマイクロサイトを生成するRoR3サイトを構築しています。現時点では、www.site.com/clientidのURLを使用してマイクロサイトに入りますが、独自のドメインをプログラマチックに登録したいので、www.clientid.comに入り、自分のサーバーにリダイレクトされます。それを行う方法はありますか?RoR 3 - クライアントのためのドメインの登録

答えて

1

クライアントがレジストラのDNS管理インターフェイスを使用してドメインにIPを指しているようにします。 (技術的にはA recordまたはAAAA recordが作成されますが、これは問題ではありません)
DNSが伝播されたら、ブラウザにwww.clientid.comと入力すると、サーバ(あなたのレールアプリ)にリクエストが送信されます。そこで、ドメインに基づいてコンテンツを選択的に配信できます。

class ApplicationController 
    before_filter do 
    @current_account = Account.find_by_domain(request.domain) 
    end 
end 
+0

クライアントがドメインを購入しなくてもこれを行うことはできますか?たぶんgodaddy apiかそのようなもの。 – Tony

+0

同じテクニックを使用して、 'clientid.yourdomain.com'の形式であなた自身のドメインにサブドメインを提供することができます。' Account.find_by_subdomain(request.subdomain) 'http://railscasts.com/episodes/221-subdomains- in-rails-3これは、たとえば、Apache 'ServerAlias * .yourdomain.com'のようにサーバを設定する必要があることを意味します。 – clyfe

+1

トップレベルドメインから直接下降したい場合は、クライアントにドメインを購入させる必要があります、または第三者としてAPIを介してレジストラと自分自身を接続することができます。 – clyfe

関連する問題