我們使用的網站偶爾會被複製到本地環境中以進行日常調試等。
這些網站有大量用戶生成的媒體 - 特別是圖像。為了避免下載所有這些文件,我們有一個簡單的重定向規則,因此某個資料夾中返回 404 的任何文件/資料夾都會被重定向到生產伺服器。
問題
僅當網站在本地主機上運行時才應套用該規則。
例如條件:請求是本機。
<!-- Handle missing files or folders inside
the /Media directory on Development Environment -->
<rule name="Handle missing media" stopProcessing="true">
<match url="^media/(.*)" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<!-- Add Conditions, so local only -->
</conditions>
<action type="Redirect" redirectType="Temporary"
url="http://production.domain/{R:0}" appendQueryString="true" />
</rule>
答案1
我現在沒有機器來測試這個,但我想像這樣的附加條件應該有效:
<conditions>
<add input="{REMOTE_ADDR}" pattern="127.0.0.1" />
</conditions>
甚至:
<conditions>
<add input="{REMOTE_HOST}" pattern="localhost" />
</conditions>