ドメインを購入し、DNSサーバに登録しました。しかし私は、来るリクエストが私のドメインから来たものかどうか、私のウェブサーバがどう知っているのだろうか。例えば。誰かが彼のドメインを自分のサーバーに登録しました。明らかに、Apacheは他のドメインの要求を拒否する必要があります。私はちょうどWebサーバー(Apacheのような)がこれをどのように検出するかについてもっと詳しく知りたいと思う。それは設定ファイル(おそらくサーバ名?)に設定されていて、文字列の比較は何ですか?私のウェブサーバーはドメインが私のものであることをどのように知っていますか?
答えて
短い回答:既定では、他のユーザーが自分のドメインを自分のウェブサイトにポイントしている場合、既定では自分のコンピュータに送信されるWebページは、www.yourdomain.comで使用するのと同じWebページです。他のドメインからのリクエストを拒否/リダイレクトするようにWebサーバーをプログラムすることもできます。
ロング答えは(私はあなたが読んrecommand):
共通初心者の誤解は、ドメインがWebサーバに「TIED」されていることです。しかし、それは当てはまりません。彼らは完全に異なっていて、やや無関係です。ドメインは、あなたのWebサーバーに関連するIPアドレスの省略形です。 IPアドレスは実際にあなたのウェブサーバーに合わせて作られたものです。例えば
:1.1.1.1の場合は
www.example.comは '決意'/1.1.1.1 に相関して できwww.randomdomain.comも1.1.1.1
に解決することができあなたのWebサーバが関連しているIPアドレス、次にこれらの要求はあなたのWebサーバに送られます。
ここで、このロジックを考えれば、1.1.1.1と入力するだけでWebサーバーにアクセスできるはずです。それは本当です!
現実世界での例:
www.google.com 172.217.6.78は、google.comはに解決/相関するウェブサーバーの1つですので、172.217.6.78はまた、Googleに行く
グーグル
に行きます。 172.217.6.78をウェブブラウザに入力してください。 google.comに移動します。DNSサーバーは、ドメインをWebサーバーのIPアドレスに指定します。あなたのウェブサーバ上で
:
サーバーには、それは外部のインターネットからの取得要求に応答するソフトウェアを実行します。このソフトウェアは、通常、正しい構文を使用してこの要求にどのように応答するか、複数の要求を同時に処理できることを認識します。このソフトウェアがリクエストを受け取ると、指定したファイルがロードされ、ユーザー/クライアントに送信されます。
このソフトウェアの一般的な例には、Apache(最も有名/人気 - facebook.comを含むすべてのウェブサイトの40%のように動作します)とnginx(人気が高まっています)があります。 Apache/nginx/etc Webサーバーのデフォルトの設定は、そのユーザーに('80 'で)' www 'フォルダーにある文書を提供することです。しかし、(Apacheの場合)1つのWebサーバー(www.example.com & login.example.com)に複数のドメインを提供する場合、通常は仮想ホストを作成します。仮想ホストを作成するには、Apacheの設定ファイルを編集します。 (あなたがGoDaddy/namecheapなどでホストしている場合は、これにアクセスすることはできません。)
基本的な仮想ホストの例は次のようになります。
<VirtualHost *:80> #80 for port 80 - the standard port for unencrypted web traffic
ServerName www.yourdomain.com
DocumentRoot /where/your/web/files/are/located
<VirtualHost>
別の場合は、その後、/デフォルトでは、しかし、別のドメインのトラフィック
<VirtualHost *:80>
ServerName www.randomotherdomain.com
#here, you could either serve new content to this domain using "DocumentRoot" or you can forward all traffic to your website
Redirect/http://www.yourdomain.com
<VirtualHost>
を転送拒否するように、別の仮想ホストを作成することができます人は自分のドメインをあなたのウェブサイトに向けています。デフォルトでは、自分のコンピュータに送信されるウェブページは、www.yourdomain.comに使用するのと同じウェブページです。
- 1. このサイトは私がスクレーパーであることをどのように知っていますか?
- 2. どのように私はこのことを知ってRequireJS
- 3. は、どのように私は私が使用することができます知っているjupyter
- 4. 私はどのようなレコードを知っていますか?ダイナミクスAX7ここ
- 5. は、どのように私は私がXController /アクションのようなURLを持っているかのことを知っているASP.netのコントローラのアクション
- 6. ウェブサイトは私がプロキシを使用していることをどのように知っていますか?
- 7. サイトはどのように私のFacebookの友達が誰であるかを知っていますか?
- 8. Git統合アプリケーションは、私がマスターブランチにプッシュできることをどのように知っていますか?
- 9. 私のnginxウェブサーバーに対するこれらの未知のrequest_uri値はどういう意味ですか?
- 10. blogger.comはそれが私のことをどのようにして知っていますか?
- 11. どのように私はキーボードが開いていることを知ることができます
- 12. 私はどのようにしてサービスのステータスを知っていますか?
- 13. は、どのように私は知っていますし、どのように私はそれを
- 14. PHPによるドメインのドメインをどのように知ることができますか?
- 15. 私はどのように私のapacheウェブサーバー上でより多くのressourcesを使用してwhitchのバーチャルホストを知っている?
- 16. どのように私のドメインの私のユーザーにカスタムドメイン名を提供することができます
- 17. 私のサーバーの名前はどのように知っていますか?
- 18. 私は、System.RuntimeTypeを知っていることがわかっていますが、どのように型付きオブジェクトを取得するのですか?
- 19. ReadAsMultipartAsyncこの起こっているので、私は誰もが知っているかどうかを知りたい
- 20. 私はこの記号と同等のユニコードを見つけようとしています。誰でも私に知らせることができますか?
- 21. どのように私は私はそれは愚かな質問であることを知っているが、どのように私は、この2台のid_cursoののMysqliに参加しますかmysqliの
- 22. は、どのように私はこれは愚かな質問 である知っているドロップゾーンプレビューテンプレート
- 23. こんにちは私は、私がここで持っているコードよりも、私のjavascriptのほうがクリーナーの方が短いかどうかを知りたがっています。
- 24. 私は、これはデータセット、DataGridViewのか、リストビューであるかを知っていただきたいと思いますし、また、私は、これはデータセット、DataGridViewのか、リストビューであるかどうかを知りたいのですが、この
- 25. どのように私は私が持っているビューで
- 26. FirefoxはそのページがAtomフィードであることをどのように知っていますか?
- 27. は、どのように私は2つのドメインを持っているlaravel 5. *
- 28. は、どのように私は私がこのパーサ持っているリスト
- 29. は、これは私がこれまで持っているものである
- 30. 私はこのようなものである私のプロジェクトに構造を持っているAPIデータ