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

旧域名波斯语URL永久重定向的IIS Rewrite配置问题

波斯语URL永久重定向的IIS Rewrite正确配置

问题背景

需将旧域名下的波斯语URL永久重定向到新域名对应页面:

  • 旧URL:https://sisnogroup.com/%D8%A7%D9%82%D8%A7%D9%85%D8%AA-%D8%AA%D8%AD%D8%B5%DB%8C%D9%84%DB%8C-%DA%AF%D8%B1%D8%AC%D8%B3%D8%AA%D8%A7%D9%86-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%AF%D8%A7%D9%86%D8%B4-%D8%A2%D9%85%D9%88%D8%B2%D8%A7%D9%86
  • 新URL:https://sisnogroup.ge/fa/%D8%A7%D9%82%D8%A7%D9%85%D8%AA-%DA%AF%D8%B1%D8%AC%D8%B3%D8%AA%D8%A7%D9%86

此前配置的Rewrite规则返回404错误,规则代码如下:

<rule name="Redirect to domain 2" stopProcessing="true">
    <match url="^%D8%A7%D9%82%D8%A7%D9%85%D8%AA-%D8%AA%D8%AD%D8%B5%DB%8C%D9%84%DB%8C-%DA%AF%D8%B1%D8%AC%D8%B3%D8%AA%D8%A7%D9%86-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%AF%D8%A7%D9%86%D8%B4-%D8%A2%D9%85%D9%88%D8%B2%D8%A7%D9%86$" />
    <action type="Redirect" url="https://sisnogroup.ge/fa/%D8%A7%D9%82%D8%A7%D9%85%D8%AA-%DA%AF%D8%B1%D8%AC%D8%B3%D8%AA%D8%A7%D9%86" redirectType="Permanent" />
</rule>

失败请求跟踪日志

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
 <System>
  <Provider Name="WWW Server" Guid="{3A2A4E84-4C21-4981-AE10-3FDA0D9B0F83}"/>
  <EventID>0</EventID>
  <Version>1</Version>
  <Level>5</Level>
  <Opcode>10</Opcode>
  <Keywords>0x400</Keywords>
  <TimeCreated SystemTime="2023-06-23T08:45:41.197Z"/>
  <Correlation ActivityID="{80009014-0000-9500-B63F-84710C7967BB}"/>
  <Execution ProcessID="16364" ThreadID="13304"/>
  <Computer>WIN-KF45KMECN9L</Computer>
 </System>
 <EventData>
  <Data Name="ContextId">{80009014-0000-9500-B63F-84710C7967BB}</Data>
  <Data Name="Pattern">^%D8%A7%D9%82%D8%A7%D9%85%D8%AA-%D8%AA%D8%AD%D8%B5%DB%8C%D9%84%DB%8C-%DA%AF%D8%B1%D8%AC%D8%B3%D8%AA%D8%A7%D9%86-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%AF%D8%A7%D9%86%D8%B4-%D8%A2%D9%85%D9%88%D8%B2%D8%A7%D9%86$</Data>
  <Data Name="Input">robots.txt</Data>
  <Data Name="Negate">false</Data>
  <Data Name="Matched">false</Data>
 </EventData>
 <RenderingInfo Culture="en-US">
  <Opcode>PATTERN_MATCH</Opcode>
  <Keywords>
   <Keyword>Rewrite</Keyword>
  </Keywords>
 </RenderingInfo>
 <ExtendedTracingInfo xmlns="http://schemas.microsoft.com/win/2004/08/events/trace">
  <EventGuid>{0469ABFA-1BB2-466A-B645-E3E15A02F38B}</EventGuid>
 </ExtendedTracingInfo>
</Event>

问题原因

从日志可见,规则匹配时传入的Input是robots.txt,未匹配到目标波斯语URL;同时IIS Rewrite的match url匹配的是解码后的路径,而非URL编码后的字符串,直接用编码后的%D8%A7...作为匹配模式会导致匹配失败。

正确配置方案

方案1:精确匹配解码后的路径

<rule name="Persian URL Redirect" stopProcessing="true">
    <!-- 匹配解码后的完整波斯语路径 -->
    <match url="^اقامت-تحصیلی-گرجستان-برای-دانش-آموزان$" />
    <!-- 限定仅旧域名请求触发重定向 -->
    <conditions>
        <add input="{HTTP_HOST}" pattern="^sisnogroup\.com$" />
    </conditions>
    <action type="Redirect" url="https://sisnogroup.ge/fa/اقامت-گرجستان" redirectType="Permanent" />
</rule>

方案2:正则批量匹配(适用于同结构多URL)

如果有多个类似结构的URL需要重定向,可通过正则提取共同部分:

<rule name="Persian URL Batch Redirect" stopProcessing="true">
    <match url="^اقامت-تحصیلی-(.*)-برای-دانش-آموزان$" />
    <conditions>
        <add input="{HTTP_HOST}" pattern="^sisnogroup\.com$" />
    </conditions>
    <action type="Redirect" url="https://sisnogroup.ge/fa/اقامت-{R:1}" redirectType="Permanent" />
</rule>

注意事项

  • 确保服务器已安装IIS URL Rewrite模块,否则规则无法生效。
  • redirectType="Permanent"对应301永久重定向,利于搜索引擎更新收录。
  • 配置完成后测试旧URL跳转情况,同时确认其他页面不受影响。

内容的提问来源于stack exchange,提问作者farhad kazemipour

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 06:32:15