IIS Url 重写,仅限本地主机(缺少文件和文件夹)

IIS Url 重写,仅限本地主机(缺少文件和文件夹)

我们偶尔会将网站复制到本地环境中进行例行调试等。

这些网站有大量用户生成的媒体 - 特别是图像。为了避免下载所有这些文件,我们有一个简单的重定向规则,因此某个文件夹中返回 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>

相关内容