Url重写为小写

时间:2013-09-10 16:48:04

标签: url-rewriting

我的web.config中已经有以下代码,它完全符合我的要求。

<rewrite>
  <rules>
    <rule name="Canonical Host Name" stopProcessing="true">
      <match url="(.*)" />
      <conditions logicalGrouping="MatchAll">
        <add input="{HTTP_HOST}" pattern="^www.mysite.com$" negate="true" />
      </conditions>
      <action type="Redirect" url="{MapSSL:{HTTPS}}www.mysite.com/{R:1}" redirectType="Permanent" />
    </rule>
  </rules>
  <rewriteMaps>
    <rewriteMap name="MapSSL" defaultValue="OFF">
      <add key="ON" value="https://" />
      <add key="OFF" value="http://" />
    </rewriteMap>
  </rewriteMaps>
</rewrite>

我所看到的只有一个元素缺失。 url的查询元素将保持原样 - 混合/大写 - 我如何确保所有url都是小写的?

1 个答案:

答案 0 :(得分:1)

您可以添加小写规则。

<rule name="LowerCaseRule" patternSyntax="ExactMatch" stopProcessing="true">
  <matchurl="[A-Z]" ignoreCase="false"/>
  <actiontype="Redirect" url="{ToLower:{URL}}"/>
</rule>

默认模板的一部分,在搜索引擎优化(SEO)模板下,选择强制使用小写网址