15

これら 2 つのサーバー変数の違いについて混乱しています。IISのドキュメントを確認すると、次のように記載されています:-

HTTP_HOST

Web サーバーの名前を返します。これは、Web サーバーで使用している名前解決のタイプ (IP アドレス、ホスト ヘッダー) によって、SERVER_NAME と同じである場合と異なる場合があります。

サーバー名

自己参照 URL に表示されるサーバーのホスト名、DNS エイリアス、または IP アドレス。

誰かがどのように違うのか、いくつかの例を挙げてもらえますか?

私たちの Web ファームには 2 つの IIS Web サーバーがあり、それぞれに 2 つの Web サイトがあります (もちろん、サーバーごとに同じです)。

各 Web サイトには、約 5 つほどのバインディングがあります。

それで..値は何でしょうか?違いは何ですか?

4

3 に答える 3

2

IIS でホストされている aspx ページの 1 つでトレースを有効にすると、SERVER_NAME はサーバー名だけを返しますが、HTTP_HOST はサーバー名:サイトが実行するポートを返します。トレース セットを有効にする

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication3.WebForm1" Trace="true" %>

トレース値に注意してください

于 2011-05-23T09:20:30.823 に答える
1

ASP.NETについてはわかりませんが、PHPでは、クライアントがHTTPヘッダーで$_SERVER['HTTP_HOST']送信したものであり、Webサーバーの構成によって決定されます。Host$_SERVER['SERVER_NAME']

于 2011-05-23T08:37:20.757 に答える
0

HTTP_HOST はHTTPホストヘッダーであり、DNS(ドメインを追加してサーバーにポイントする)またはコンピューターのHOSTSファイルを介して変更できます。

Windows の SERVER_NAME はマシン名です。名前を表示 (または変更) するには、右クリックMy Computer(または Win10+ のコンピューター) と [プロパティ] を使用します。

于 2016-09-09T07:43:14.320 に答える