背景:我正在將傳入的80/443流量轉發到\\SERVER2
; TFS正在運行\\SERVER3
。我希望將所有與TFS相關的請求路由到\\SERVER3
。我必須這樣做,因爲我在\\SERVER2
上運行了Server Essentials,這足以在URL重寫下工作得很好(幾乎和SharePoint一樣糟糕,但不完全)。在URL重寫期間奇數404
這裏的默認網站上唯一的規則:
<rule name="TFS Rewrite" stopProcessing="true">
<match url="^tfs(.*)" />
<action type="Rewrite" url="http://server3:8080/{R:0}" />
</rule>
...這是失敗請求日誌:https://1drv.ms/f/s!AodXF_j3BiWkhPAZwjnwC-rAecVgtw
注意對PDF的線#87所請求的URL:http://server3:8080/tfs
。我可以瀏覽到內部就好了。外部URL是https://tfs.domain.com/tfs
。
所有文件特定的下一個條目是404本身,在#165行。
我只是不明白這一點。這是一個簡單的規則。爲什麼IIS會爲404顯式生效並且工作正常?
編輯
作爲一個測試,我添加了這個條件:
<conditions>
<add input="{HTTP_HOST}" pattern="tfs.domain.com" />
</conditions>
現在,如果我瀏覽到https://tfs.domain.com/
,默認的網站加載。
這與日誌一起似乎表明,雖然IIS正在重寫URL,但流量實際上未被路由到\\SERVER3
。
這是怎麼回事?這是一個謎。