IIS:将所有请求重定向到一个页面?

Cli*_*ris 58 iis redirect

对于我的IIS网站,我想将所有请求重定向到一个页面.这样做的目的是我想对我的所有Web应用程序使用的数据库(离线)进行一些维护.我在这个网站上运行了大约50个网络应用程序,因此我想避免访问每个应用程序以更改某些内容.我想我可以在machine.config中进行一次更改?任何提示将不胜感激.

Lor*_*its 92

如果您使用的是ASP.NET 2.0(或更高版本),则可以在根目录上删除app_offline.htm页面.

更多信息在这里.


se_*_*vel 49

在webconfig中

 <rewrite>
        <rules>
            <rule name="redirect all requests" stopProcessing="true">
                <match url="^(.*)$" ignoreCase="false" />
                <conditions logicalGrouping="MatchAll">
                    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" pattern="" ignoreCase="false" />
                </conditions>
                <action type="Rewrite" url="index.php" appendQueryString="true" />
            </rule>
        </rules>
    </rewrite>
Run Code Online (Sandbox Code Playgroud)

  • 给出一个+1,因为它是一个替代解决方案(碰巧适合我),但是应该指出重写与重定向不同,所以如果需要真正的重定向,那么这将不起作用. (6认同)
  • 此重写规则仅将请求重定向到文件夹,而不是文件.OP希望重定向*all*请求.为此,请删除`<conditions>`标记. (4认同)
  • 如果需要重定向,则只需将`action type`更改为`Redirect`. (3认同)

pip*_*eek 11

使所有页面都不可用,可能会停止当前的网站并在其位置创建一个完整的新的完整空白站点.然后为404(找到文件)错误设置自定义错误页面.自定义错误是IIS中网站的属性对话框中的选项卡.只需创建要发送的页面,然后在自定义错误选项卡上更改404条目以指向刚刚创建的新文件.

  • 这有一个很大的问题,虽然从美学角度看UI会起作用,如果你碰巧有一个搜索引擎抓取你的网站,它会突然收到一堆404并从搜索结果中删除内容. (2认同)