簡體   English   中英

如何在IIS上配置一個URL重寫/代理規則?

[英]How to configure one URL Rewrite/proxy rules on IIS?

架構:用戶 - > ARR服務器 - > LB - > 2 Web服務器服務2個不同的站點Web Server1服務 - > https://xxxx-green-xxxx-xxxx.net/xxx/xxx?xx=xxxx其中綠色關鍵字來自域名Web Server2服務中的任何位置 - > https://xxxx-yellow-xxxx-xxxx.net/xxx/xxx?xx=xxxx其中黃色關鍵字出現在域名的任何位置

要求:請求格式: https ://xxxx-green-xxxx-xxxx.net/xxx/xxx?xx =xxxx或黃色URL在ARR中,我們需要使用URL中的綠色和黃色關鍵字過濾URL並將其發送到相應的Web服務器IP。

但我的所有請求都只登陸主頁。 甚至我感到困惑的是,更改主機是否會工作,但我需要為LB中的每個Web服務器提供不同的IP

我們設置了此規則並得到以下結果:

                <rule name="Green" enabled="true" stopProcessing="true">
                <match url="(.*xxx.net)(/.*)" />
                <conditions logicalGrouping="MatchAll" 
                 trackAllCaptures="false">
                    <add input="{HTTP_HOST}" pattern="green" />
                </conditions>
                <action type="Rewrite" url="https://xx.xxx.xx.xx/{R:2}" 
                 appendQueryString="true" />
                 </rule> 
                 Where R:2 is --> xxx/xxx?xx=xxxx

根據你的問題。

您需要為此編寫自定義重寫規則。 所以首先請參考鏈接

進入鏈接,您可以處理您的要求並重寫到其他其他Web服務器。

所以請按照所有步驟,寫下你的邏輯
重寫(字符串值)方法。

在此方法中,您需要從IIS規則傳遞服務器URL並通過以下條件檢查。

 public string Rewrite(string value)
  {
      if(value.Contains("green"))
        {
         return // your rewrite URL here
        }
      else if(value.Contains("yellow"))
        {
         return // your rewrite URL here
        }
    return value;
  }

所以它按照你的要求工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM