web-dev-qa-db-ja.com

ルートドメインを別のTLDのサブドメインにポイントします(マスキングではなくDNS経由)

私はこの質問に対するいくつかの同様の答えを見つけましたが、私が誤解している場合に備えて誰かが明確にすることができることを望んでいました。これは、ASP.NETのIIS 7でホストされています

私のサイトでは、rootドメインとwwwドメインがホームページにアクセスしています。

  • example.comは私のホームページに行きます
  • www.example.comは私のホームページに行きます

また、ユーザー用にURLリダイレクトを設定しています。

  • user1.example.comはexample.com/Page.aspx?u=user1に書き換えます
  • user2.example.comはexample.com/Page.aspx?u=user2に書き換えます
  • 等.

これらはすべて完全に機能していますが、ユーザーが自分のドメイン名を登録して自分のサイトを指すようにしたいと思います。彼らはこれらの名前を管理し、私はそれらを設定する方法についてのチュートリアルを提供します。 wwwサブドメインでCNAMEを機能させる方法を理解できると確信していますが、ルートURLも機能させたいと思います。これは可能ですか?

をお願いします:

  • user1.example.comを指すuserdomain1.com
  • www.userdomain1.comはuser1.example.comを指します
  • user2.example.comを指すuserdomain2.com

ドメインマスキングを使用することはできますが、実際のドメイン名のようにドメインを実行したいので、使用したくありません。

これは、DNSやコーディングを介して、何らかの方法で実行できますか?ありがとう! :)

2
trnelson

私はこれがうまくいったように見えるので、興味のある人のためにここに答えを残します!

ユーザーのドメイン名については、Aレコードが自分のWebサイトのIPアドレスを指すように指示します。これは@ホストを介して行いましたが、*ワイルドカードホストでも実行できると思います。

次に、Web.configファイルで、IIS 7 Rewrite Module:

<rule name="UserDomain" stopProcessing="true">
    <match url="(.*)" />
    <conditions>
        <add input="{HTTP_Host}" negate="true" pattern="^(?:www\.)?example\.com$" />
    </conditions> 
    <action type="Redirect" url="http://www.example.com/Page.aspx?d={HTTP_Host}" />
</rule>

基本的に、この負の正規表現ルールは、このホストを指すドメインがメインのWebサイトドメインexample.comではないドメインをPageにリダイレクトすることを示しています。 aspxを実行し、クエリ文字列でドメイン名を渡します。これにより、必要に応じてデータベースを検索できるようになります。これについての最もよい部分は、それがドメインマスキングではなく、ドメイン転送でもないということです。それを機能させるためのちょっとした魔法を備えた、優れた、クリーンなDNSの良さです。

まだ少し調整する必要がありますが、私はこれを理解してとてもうれしいです! :)

1
trnelson

私があなたを正しく理解しているなら、あなたはあなたが求めているようにCNAMEレコードを使うことはできません。あなたがやろうとしていることを達成するために、あなたはあなたのためにhttpリダイレクトをするいくつかのウェブサーバーを指すAレコードを入れなければならないでしょう。 Godaddyは、このようなドメインをリダイレクトできます。彼らは、ここのドキュメントでこれを「マスキングなしの転送」と呼んでいます。

http://help.godaddy.com/article/422

2
JakePaulus