ドメインとすべてのサブドメインを特定のサブドメインにリダイレクトする

ドメインとすべてのサブドメインを特定のサブドメインにリダイレクトする

私は学校の同窓会のサイトを構築しています。myschool.comからドメインを購入しましたGoDaddy。GoDaddy では、DigitalOceanネームサーバーとしてカスタマイズしました。

DigitalOcean の DNS をカスタマイズして、ドメインに関連するすべてのものmyschool.comを にリダイレクトできるようにしたいと考えていますalumni.myschool.com。具体的には、次のすべてが実現できます。

  • alumni.myschool.comブラウザにまたは と入力するとwww.alumni.myschool.com、URL が になりalumni.myschool.com、ブラウザにサーバー IP の関連付けのサイトが表示されるようにします178.62.87.73

  • たとえばabc.myschool.comブラウザで間違ったサブドメインを入力した場合でも、URL は になりalumni.myschool.com、ブラウザにはサーバー IP の関連付けのサイトが表示されます178.62.87.73

  • ブラウザにドメイン、つまりwww.myschool.comまたはを入力するだけの場合www.myschool.com、URL は のままになりalumni.myschool.com、ブラウザにはサーバー IP の関連付けのサイトが表示されます178.62.87.73

時差や DNS キャッシュの問題により、設定を試してテストするのは困難です。設定が間違っているのか、それとも単に待つ必要があるのか​​を判断するのは困難です。

それで、これを理解するために、レコードの完全なリスト (A、CNAME...) を誰か教えてもらえませんか?

編集2:

最初の回答に従って、4つのAレコードを で追加しました.

@         IN  A   178.62.87.73
alumni    IN  A   178.62.87.73
*         IN  A   178.62.87.73
*.alumni  IN  A   178.62.87.73

サーバーに次のサーバー ブロックを追加しました:

server {
        listen 80;
        listen [::]:80;

        server_name myschool.com *.myschool.com;
        return 301 $scheme://alumni.myschool.com$requrest_uri;
}

サーバーはalumni.myschool.com同じままです:

server {
        ...
        server_name alumni.myschool.com;
        ...
}

その結果myschool.com、、、www.myschool.comおよびabc.myschool.comwww.abc.myschool.comすべてwww.alumni.myschool.comに正常にリダイレクトされますalumni.myschool.com

答え1

最も重要な点は、あなたが説明した実際のリダイレクトは DNS では実行されないということだと思います。

次のようなことができます (最小限):

example.com.         IN  A   178.62.87.73
*.example.com.       IN  A   178.62.87.73

しかし、実際に使用する予定の名前が明確に記録されていないと、他の人間にはそれがはっきりと伝わりません。

何よりも明確にするために、次の内容を追加することをお勧めします。

alumni.example.com.    IN  A   178.62.87.73
*.alumni.example.com.  IN  A   178.62.87.73

(最初のレコードだけで、ゾーンの頂点のすぐ下のワイルドカードが適用されるスコープが終了します。)


実際に希望する動作を実現するには、リクエストに対して実際のコンテンツを提供するように Web サーバーを構成しalumni.example.com、他のすべてのexample.com名前に対しては対応する URL にリダイレクト (301) するだけですalumni.example.com

関連情報