web-dev-qa-db-ja.com

WebサイトはそのIPアドレスで直接アクセスできる必要がありますか?

多くのWebサイトは、FQDN(例:example.com)でアクセスしたときにのみサイトコンテンツを表示することがわかりました。 IPアドレスでアクセスしようとすると、404サイトが見つかりませんというエラーが表示されます。

サイト所有者がDNSを経由するのではなく、IPアドレスでWebサイトに直接アクセスすることを望まない理由はありますか?

ウェブサイトで直接IPアクセスを利用できる利点と欠点は何ですか?

34

ドメイン名を介してアクセスされるWebサイトは、IPアドレスのルートで直接ホストされない場合があることに注意してください。つまり、example.org123.45.67.89/~exampleにマップできます。通常のWebホストでは、WebサイトごとにIPアドレスを割り当てることができないため、これは一般的です。これは非常に無駄です。

たとえば、 DNSルックアップ of webmasters.stackexchange.comを実行すると、IPアドレス198.252.206.140を取得します(リンク先のWebサイトの右側にあります)。 IPアドレスはStackExchangeページに移動しますが、198.252.206.140/www/webmastersのようなWebマスターセクションには移動しません。

IPアドレス(または123.45.67.89/~exampleなど)を使用する1つの短所は、静的IPアドレスが必要なことです。何らかの理由でIPアドレスを変更する必要がある場合、ユーザーをリダイレクトする方法はありません。一方、ドメイン名の場合、新しいIPアドレスを指すようにDNSレコードを更新するだけです。

完全に関連しているわけではありませんが、IPアドレスのもう1つの明らかな欠点は、名前と末尾よりも覚えにくいことです。

デフォルトでは、ドメイン名およびIPアドレスを使用してWebサイトを利用できます。この質問に対するさまざまな回答/コメントはさまざまな視点を提供しますが、それらをコピーしたくありません。

個人的には、IPアドレスでアクセスをブロックすることはありません。単にインターネットが機能するとは思わないからです。さらに、通常のユーザーはWebサイトのIPアドレスをランダムに見つけることはありません。また、IPアドレスを使用してサイトへのリンクの共有を開始することはありません。したがって、SEOとセキュリティに対するあらゆる努力は、他の場所で確実に費やされます。

31
ljacqu

HTTPの元のバージョンには、クライアントがリクエストの一部としてホスト名を指定するメカニズムが含まれていませんでした。サーバーに接続し、URLのパス部分のみを送信しました。 HTTPプロトコルに対する初期の変更の1つは、クライアントがホスト名を含む他の「ヘッダー」情報を送信する機能を追加することでした。

20年前、仮想ホストのブラウザサポートは非​​常に不安定でした。当時は、IPアドレスだけからコンテンツを提供する正当な理由もありました。少数のクライアントがHostヘッダーを送信しなかったでしょう。ホスト名は、すべてのブラウザーとWebクローラーによって送信される標準ヘッダーになりました。

実際、サーバーがWebサイトで応答する場合、IPアドレスのコンテンツを探している要求は満たされそうにないことがわかります。次のようなIPのみのリクエストが表示される傾向があります。

  • usedがそのIPアドレスにあるWebサイトの場合
  • マルウェアによるアクセスの試み

現在、自分のサイトにサービスを提供したり、サイトにリダイレクトしたりするのではなく、IPアドレスリクエストに対してのみ404エラーを提供することを好みます。私のサーバーは、 悪意のあるドメインリダイレクトへの対処方法 への回答で説明されているように、認識されないホスト名に404ページを提供するように構成されています

9

特に、複数のドメインをホストする共有ホスティングまたは独自のサーバーがある場合、IP経由で「ウェブサイト」にアクセスできません。独自のサーバーでは、IPを入力した場合に到達するプライマリドメインを定義できます。共有ホストの場合は不可能です。

@Ijacquで述べたように、IPは簡単に変更できます。

もう1つのことはコンテンツの複製です。したがって、基本的にはそうすることはお勧めできません。

サーバーIPを介してWebサイトにアクセスしたい場合は、ドメイン自体に301または302フォワードを確実に追加する必要があります。

私が管理したサーバーの1つに小さなHTMLサイトを追加しました。「Welcome to 123.456.789.123」をデフォルトのWebサイトとしてエコーします。いくつかの顧客プロジェクトがそのマシンでホストされていたためです。 Apache vhostsを使用して設定しました。

7
Christoph Daum

SEOの観点から見ると災害です。

Stackexchange.comなどのWebサイトが1つあり、IPアドレスからもアクセスできる場合、コンテンツが重複します。

これはランキングを破壊し、ユーザーを混乱させます。ユーザーはGoogleを検索し、同じトピックの2つの結果を見つけます(1つはドメイン名でアクセス可能、もう1つはIPアドレスでアクセス可能)

IPアドレスからドメインにアクセスできないようにしてください。

1つのサーバーで1つのドメインをホストしている場合、最良のアプローチは、そのドメインへの301 redirect直接IPアドレスアクセスです。

サーバー上に複数のドメインがある場合は、直接IPアドレスアクセスを無効にします。

3
krokola

わずか2セントで、WebサーバーにいくつかのWebサイト(約8)があり、それらはすべて同じIPアドレスを持っています。ホストヘッダーを使用すると、FQDNはWebサーバー(私の場合はApache)が問題のWebサイトの正しいディレクトリに要求を送信するのに役立ちます。 IPアドレスは、デフォルトで会社のWebサイトに送信されます。 2001年頃から、これはほとんどのWebホスティングプロバイダーの標準であり、特にIPv4アドレスの現在の状態を考慮しています。ほんの少しのバックグラウンドで、私はVoyager.net(ミシガン州)で約8年間働いていました。Voyagerは80,000以上のドメインをホストするホスティング会社であり、ISPでした。補足として、FQDNは定義により、人間が読めるアドレスをIPアドレスに与えるために使用されるため、より簡単に覚えることができます。再び私の2centsだけ。

2
Tad

セキュリティの観点から見ると、これは賢明な動きです。

トラフィックの多いほとんどのWebサイトでは、CDNがどこかに使用されます。そのため、試みられたDOSまたはDDOS攻撃は、単にCDNサーバーを介して消滅し、ユーザーサイトに到達しません。

ただし、ユーザーがサイトのIPアドレスを知っている場合、そのIPに直接攻撃を仕掛けて、すぐにサーバーを停止できます。それが、ほとんどのCDNがサーバーのIPアドレスを隠すオプションを提供する理由です。そのため、サイトにアクセスしようとしている人に404を渡すのは良い動きです。これは、.htaccessファイルによって、またはデフォルトのサーバードキュメントルート以外の場所でサイトをホストすることによって、萎縮させることができます。

1
Rana Prathap