0

負荷分散されたサーバーのプールから実行される3つのWebサイトがあります。ロードバランサーはスティッキーセッションを使用して、セッションが初期プールにとどまるようにします。

Webサイトで、Webサイトに固有のURLを生成する必要があります。標準の手順に従って、HttpContext.Request.Urlを使用しようとしましたが、間違ったURLが返されます。次に、Request.ServerVariables ["HTTP_HOST"]を使用しようとしましたが、正しいURLが返されます。

誰かアイデアはありますか?

サイトAの場合:Request.UrlはURLAを返しますRequest.ServerVariables["HTTP_HOST"]はURLAを返します

サイトB:

Request.UrlはURLAを返しますRequest.ServerVariables["HTTP_HOST"]はURLBを返します

サイトC:

Request.UrlはURLを返しますARequest.ServerVariables["HTTP_HOST"]はURLCを返します

4

1 に答える 1

0

Request.ServerVariables["HTTP_HOST"]IIS ホストを返します。つまり、Web サイトが応答するように設定されているホスト名です。これは、ページにアクセスするために実行された URL クライアントと同じホストである場合と異なる場合があります。クライアントは常に同じ URL を実行しますが、ロード バランサーはそれを別の IIS インスタンスに送信するため、表示される動作は完全に論理的です。

編集:その点について、「ウェブサイトに固有のURL」が必要な理由について混乱していますか?

于 2010-12-12T05:13:15.863 に答える