asp.net – IIS URL重写模块url为小写

为了更好的SEO,我们使用URL重写将所有URL转换为小写.我在下面的文章this中提到了这个.

从URL的角度来看,一切都很好,但是当我们检查提琴手时,我们看到很多301重定向.
它看起来像图像,javascript,css,jquery ajax调用,一切都转换成小写.
我试图删除它,并希望只重写aspx扩展名,没有扩展名网址.我尝试在没有任何成功的情况下玩火柴.任何帮助或指导都会得到高度评价.

谢谢

编辑:
我当前的规则是

 <rules>

    <rulename="LowerCaseRule1"patternSyntax="ExactMatch"stopProcessing="true">
      <matchurl="[A-Z]"ignoreCase="false"/>
      <actiontype="Redirect"url="{ToLower:{URL}}"/>
    </rule>
  </rules>
最佳答案
您可以使用以下内容:

<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结尾.
>第二个检查请求的路径(文件名)是否不包含a. (所以没有扩展名)

转载注明原文:asp.net – IIS URL重写模块url为小写 - 代码日志