タイトルが明確でない場合はお詫びします。基本的に、ポート 80 でリッスンする Web プロキシがあり、IIS で URL 書き換えを設定しています (web.config のルールは次のとおりです)。
http://example.com/api/blah/blah ->
http://example.com:8095/api/blah/blah
<rule name="api-example" enabled="true" patternSyntax="ECMAScript" stopProcessing="true">
<match url="^.*/api/.*$" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
<action type="Rewrite" url="http://localhost:8095/{R:0}" appendQueryString="true" logRewrittenUrl="false" />
</rule>
問題なく動作します。localhost:8095 を直接リクエストしても動作します
しかし、リクエストが直接リクエストされたのか、それとも URL 書き換えモジュールを介してリクエストされたのかを認識できるようにしたいと考えています。
私の考えは、IISでURLが書き換えられたときにクエリ文字列をURLに追加して、クエリ文字列が存在するかどうかを確認し、そうでない場合はURLの書き換えを介して確認できるようにすることです。
例:
http://example.com/api/blah/blah?from=proxy -> http://example.com:8095/api/blah/blah?from=proxy
http://example.com/api/blah/blah?existing_query_string=blah&from=proxy -> http://example.com:8095/api/blah/blah?existing_query_string=blah&from=proxy
どうすればこれを達成できますか?またはそれを行う他の方法はありますか?
どうもありがとう
明