You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在IIS中将旧链接及不存在的URL重定向至指定地址

修复IIS URL重定向规则的问题

原规则的问题分析

  1. <match url>中包含了域名domain.com,这是错误的——IIS URL重写模块的match url仅匹配域名之后的路径部分,不包含域名本身。
  2. 使用了Rewrite类型的action,但你需要的是让浏览器地址栏更新的重定向操作,而非服务器内部重写。
  3. 目标URL不符合你的需求,且未使用更灵活的相对路径写法。

正确的重定向规则

将原规则替换为以下配置:

<rule name="SP" stopProcessing="true">
    <match url="^Product/PoductDetails/bitouyin/probiotin$" />
    <action type="Redirect" url="/Product/bitouyin/probiotin" redirectType="Permanent" />
</rule>

规则说明

  • <match url>:仅保留路径部分^Product/PoductDetails/bitouyin/probiotin$,^和$确保完全匹配该特定路径,避免误匹配其他相似URL。
  • <action type="Redirect">:明确使用重定向类型,让浏览器地址栏自动更新为新URL;redirectType="Permanent"表示301永久重定向,对SEO更友好,若需临时重定向可改为Found(对应302状态码)。
  • url="/Product/bitouyin/probiotin":使用以/开头的相对路径,代表网站根目录,比写完整域名更灵活,适配不同环境的域名配置。

额外:处理所有不存在的URL重定向

如果需要将所有访问不存在的文件/目录的请求都重定向到指定地址,可以添加以下规则:

<rule name="NotFoundRedirect" stopProcessing="true">
    <match url=".*" />
    <conditions>
        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
    </conditions>
    <action type="Redirect" url="/your-specified-page" redirectType="Permanent" />
</rule>

该规则会匹配所有未对应服务器上实际文件或目录的请求,统一重定向到你指定的页面(替换/your-specified-page为实际地址即可)。

内容的提问来源于stack exchange,提问作者Bijan Zand

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 14:01:01