IIS URL 将模块 url 重写为小写

Posted

技术标签:

【中文标题】IIS URL 将模块 url 重写为小写【英文标题】:IIS URL rewrite module url's to lowercase 【发布时间】:2013-08-16 23:23:56 【问题描述】:

为了更好的 SEO,我们使用 URL 重写将所有 URL 转换为小写。我按照this 下面的文章中提到的那样设置了这个。

从 URL 的角度来看,一切正常,但是当我们签入 fiddler 时,我们会看到很多 301 重定向。 看起来图像、javascript、css、jquery ajax 调用和所有内容都被转换为小写。 我正在尝试删除它并只想重写 aspx 扩展名而不重写扩展名 url。我试图玩 matchurl 没有任何成功。任何帮助或指南都将受到高度评价。

谢谢

编辑: 我目前的规则是

 <rules>

    <rulename="LowerCaseRule1"patternSyntax="ExactMatch"stopProcessing="true">
      <matchurl="[A-Z]"ignoreCase="false"/>
      <actiontype="Redirect"url="ToLower:URL"/>
    </rule>
  </rules>

【问题讨论】:

您必须发布您的规则配置以便我们为您提供帮助! 我添加了我当前的规则。谢谢 【参考方案1】:

您可能会使用以下内容:

<rule name="LowerCaseRule1" stopProcessing="true">
    <match url="[A-Z]" ignoreCase="false" />
    <action type="Redirect" url="ToLower:URL" />
    <conditions logicalGrouping="MatchAny">
        <add input="REQUEST_FILENAME" pattern="\.aspx$" />
        <add input="REQUEST_FILENAME" pattern="\." negate="true" />
    </conditions>
</rule>

仅当其中一个条件为真时才会触发规则:

第一个检查请求的路径(文件名)是否以.aspx 结尾。 第二个检查请求的路径(文件名)是否不包含.(因此没有扩展名)

【讨论】:

以上是关于IIS URL 将模块 url 重写为小写的主要内容,如果未能解决你的问题,请参考以下文章

如何配置iis rewrite模块的url重写规则

带有 URL 重写模块的 IIS 7.5 在回发时将 QueryString 参数加倍

iis url重写模块 是干啥用的

IIS URL 重写模块:基于 QueryString 的重定向

路由与 URL 重写 (IIS7) 性能

使用 IIS 7 重写模块重写 & 符号 URL