web.config azure网站友好的url-rewriting路由与手动代码编写

时间:2013-07-11 21:41:27

标签: azure url-rewriting web-config zurb-foundation azure-web-sites

我使用Sublime 2作为文本编辑器创建了Zurb Foundation html / css / js项目作为平面文件。我已经为我用于部署到Azure网站的Windows设置了本地git和github。我的html导航是在一个小提琴下面。我想要做的是创建友好的URL路由以从页面名称中删除.html。由于该网站只有8个页面,我想手动创建/更新web.config文件,而不必使用visual studio。

http://jsfiddle.net/setbon/smvdV/

下面是我的web.config代码,它位于根目录中,并设置为重定向www。对于没有www的规范域名,我需要添加什么规则才能使.html成为友好的URL?

再一次..我不想使用必须使用asp.net路由框架 - 它只有8页所以...手动编码规则似乎更有效。

        <?xml version="1.0"?>
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="Canonical Hostname" stopProcessing="false">
          <match url="(.*)" />
          <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
            <add input="{HTTP_HOST}" pattern="^(www\.)(.*)$" />
          </conditions>
          <action type="Redirect" url="http://{C:2}{REQUEST_URI}" redirectType="Permanent" />
        </rule>

        <rule name="Convert to lower case" stopProcessing="true">  
          <match url=".*[A-Z].*" ignoreCase="false" />  
          <action type="Redirect" url="{ToLower:{R:0}}" redirectType="Permanent" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration> 

1 个答案:

答案 0 :(得分:1)

尝试查看这些答案网址:

<强>更新

它适用于静态文件:

        <rules>
            <rule name="Rewrite Rule">
                <match url=".*" />
                <conditions>
                    <add input="{StaticRewrites:{REQUEST_URI}}" pattern="(.+)" />
                </conditions>
                <action type="Rewrite" url="{C:1}" />
            </rule>
            <rule name="Remove html Extension" stopProcessing="true">
                <match url="^(.+)\.html$" />
                <action type="Redirect" url="{R:1}" redirectType="Permanent" />
            </rule>
        </rules>
        <rewriteMaps>
            <rewriteMap name="StaticRewrites" defaultValue="">
                <add key="/file1" value="/file1.html" />
                <add key="/file2" value="/file2.html" />
                <add key="/folder/file3" value="/file3.html" />
            </rewriteMap>
        </rewriteMaps>

更多信息: