web-dev-qa-db-ja.com

ローカルホストWebサイトにトップレベルドメイン(TLD)を使用する必要がありますか?

ローカル開発には常にname.devを使用しましたが、 Google Chrome 63 update 以来、 2017年12月より、。devのドメインは、HTTPSを強制するルールが設定された プリロードされたHSTSリスト にあり、回避策はありません。

IETFは開発用に予約済みのTLDをいくつか記載しています

  1. テスト用のTLD、およびドキュメントの例

    グローバルDNSの現在または将来の実際のTLD名との競合を恐れることなく、プライベートに使用できる名前の作成に使用できるトップレベルドメイン(TLD)名が必要です。
    既存のDNS関連コードのテスト、ドキュメントの例、DNS
    関連する実験、無効なDNS名、またはその他の同様の使用。

    たとえば、ガイダンスがなければ、サイトはローカルの
    ローカルDNSコードと構成をテストするための追加の未使用のトップレベルドメイン。後で、これらのTLDが実際に使用される可能性があります
    グローバルインターネット。結果として、ローカルは
    これらのゾーンの実際のデータは、ローカルテストによって妨害される可能性があります。
    バージョン。または、テストまたはサンプルコードが記述され、
    テストコードは次のようにしか使用されないという考えで使用されているTLD
    制限されたテストベッドネットで実行するか、実際に実行することはありません。
    後で、テストコードはテストベッドからエスケープされるか、
    実際にコーディングされ、インターネット上で実行されます。の性質に応じて
    テストまたは例。TLDを参照するのが最善かもしれません
    そのような目的のために永続的に予約されています。

    これらのニーズを安全に満たすために、4つのドメイン名が予約されています
    以下にリストおよび説明します。

               .test
            .example
            .invalid
          .localhost
    

    「.test」は、現在または新しいDNS関連のコードのテストで使用することをお勧めします。

    「.example」は、ドキュメントでの使用または例として推奨されます。

    「.invalid」は、無効であることが確実であり、一目で無効であることが明らかなドメイン名のオンライン構築での使用を目的としています。

    「.localhost」TLDは、ホストDNS実装で、ループバックIPアドレスを指すAレコードを持つものとして静的に定義されており、そのような使用のために予約されています。他の用途は、この用途を想定した広く展開されているコードと競合します。

しかし、もっと短いものを使用できるかどうか疑問に思っていました。

ローカルWebサイトにhttp://nameのみを使用しても大丈夫ですか?

つまり、TLDなしのプロジェクト名のみです。 localhost「ドメイン」自体に似ています。

4

はい。依存します。

クライアント側:

ほとんどのOSでは、hostsまたはhosts.txtファイルを編集して、ネットワーク名またはドメイン名をIPアドレスに関連付けることができます。これはクライアント側のオプションです。これをデスクトップコンピューターで行うと、要求パケットのアドレス指定方法がわかります。設定例などの詳細情報を以下に示します。

https://en.wikipedia.org/wiki/Hosts_(file)

Localhostには別の名前を設定できますが、名前を追加するだけで、同じネットワーク上のクライアントからWebサーバーにアクセスできます。この方法で使用する予定のすべてのコンピューターに対して、このエントリを作成する必要があります。あなたが開発者であると仮定すると、これは多くの場合、クライアントとWebサーバーが2つの異なるコンピューターである場合です。これがインターネット上のファイアウォールを常に通過すると期待しないでください。ただし、ファイアウォールによっては許可されない場合があります。

検索ドメインを使用して、提供する短縮名にドメイン名を追加するようにコンピューターを設定できます。これには素晴らしい答えがあります。 https://serverfault.com/questions/23397/resolving-Host-names-to-their-domain-name-in-an-internal-bind-domain/23401#23401 これも必要ですこの方法で使用する予定のコンピューターごとの構成変更。

サーバ側:

問題はWebサーバーから始まります。 Webサーバーが名前を処理できることが前提です。確かに、myawesomesite.testはサイトとして簡単に構成できます。ただし、TLDのないmyawesomesiteは構成できない場合があります。これを回避する方法があります。

たとえば、Apacheでは、リクエストパケットが到着すると、Apacheは設定されたサイトとの照合を試みます。それができない場合、最初に作成されたサイトを提供します。多くの場合、これは無効なリクエストとIPアドレスのみのリクエストをキャプチャすることを目的としたキャッチオールサイトとして設定されます。これは常に行われるとは限りません。ただし、最初に作成されたサイトは、名前またはIPアドレスのみのサイトでは適切に構成できないサイトに常に使用できます。他のWebサーバーもこれを行います。

確かに、Apacheサーバーを再構成して、存在しないキャッチオールサイトを追加できます。ここでは、キャッチオールサイトが存在するいくつかの構成例を取り上げます。 仮想ホスト構成:ルーティングとワイルドカードの使用 このタスクは常に慎重に行ってください。 Apacheの設定に慣れていない場合は、実験する必要があります。そして、いつものように、構成の変更を考慮する前にApacheを再起動する必要があります。

@StephenOstermillerがコメントで指摘しているように、既存のサイトでは、「ServerAlias」をmyawesomesite.testなどの代替名に設定するだけで済みます。また、短い名前を使用できることも指摘しています。私はこれを試したことがありません。試すのに比較的費用はかかりません。

IISはNetBios名を使用できる必要があります。 Windowsネットワークを使用している場合は、これを調べて、必要なことを行う必要があります。

他のWebサーバーについては、アドバイスできません。ごめんなさい。ただし、調査すれば答えが得られる可能性があります。

2
closetnoc

URL http://name/のドメイン名にはTLDがありますが、TLDのみで構成されています( name )。 FQDNとしてhttp://name./になりますが、.のないバリアントは通常、ブラウザーでも機能します。

TLD所有者がTLD自体を解決可能にすることはまれですが、一部はそうします。たとえば、これは http://to/の場合 であり、依然としてhttp://dk/の場合です。

この回答を投稿する時点で、自分でテストできます。 http:// dk / (現在、第3レベルのドメイン名にリダイレクトします)。

それで、それらを使用することは「大丈夫」ですか?

  • いいえ、将来再び驚かされる可能性を防ぎたい場合。選択したプロジェクト名がTLDになる可能性があり、このTLD自体が解決可能になる可能性があります。安全のために、予約済みのTLDを使用してください。

  • はい、このリスクに耐えられる場合。ただし、予約されていないTLDを使用する場合は、これらのTLDへのDNSリクエストが送信されないようにシステムを構成することをお勧めします。

0
unor