これがシナリオです。さまざまなテスト サイトへのリクエストをポート転送するルーターがあります。たとえば、http: //www.ourSite.com:8051 は、ルーターからポート 80 の Web サーバーに転送します。テスト Web サイトは、IIS6 (Windows Server 2003) で実行されている 1 つの Web サイトの仮想ディレクトリです。
アプリケーションの一部は、ベース URL を使用してアプリケーション内にいくつかのリンクを作成する電子メールを送信します。アプリケーションの開始時に構築されるベース URL は次のとおりです。
siteBaseUrl = string.Format("{0}://{1}{2}",
HttpContext.Current.Request.Url.Scheme,
HttpContext.Current.Request.Url.Authority,
HttpContext.Current.Request.ApplicationPath.TrimEnd('/'));
たとえば、テスト サイトの 1 つがhttp://www.ourSite.com:8051/client1のようになっているとします。私は siteBaseUrl が http://www.ourSite.com:8051/client1 のようになることを期待しますが、実際にはhttp://www.ourSite.com/client1のようになります(私は次のような質問を見つけようとしましたこれは StackOverflow にありますが、何も見つかりませんでした.おそらく、適切なキーワードで検索していなかったか、もっとコーヒーが必要です.この問題に関する助けがあれば大歓迎です.