0

我創建了一個Zurb基金會html/css/js項目作爲使用Sublime 2作爲我的文本編輯器的平面文件。我已經爲我用於部署到Azure網站的窗口設置了本地git和github。我的HTML導航是在小提琴下面。我想要做的是創建友好的網址路由從頁面名稱中刪除.html。由於該網站只有8頁,我想手動創建/更新web.config文件,而不必使用Visual Studio。web.config azure網站友好的網址重寫路由與手動代碼編寫

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

嘗試尋找這些問題的答案網址:

更新:

其工作正常,靜態文件:

 <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> 

更多信息:

+0

TX。我在我的web.config中粘貼了代碼frm http://stackoverflow.com/questions/10210936/url-rewrite-remove-html-extension,當我導航到該網站時,之前顯示.html網址的網頁現在確實不再顯示.html,但整個網站現在顯示爲嚴格的html,並且沒有顯示任何CSS樣式 - 現在,除了主頁外 - 現在所有鏈接都會顯示「您正在尋找的資源已經刪除,更名或暫時不可用。「這是我的web.config代碼:http://cropme.ru/aef47f95179e6f097af13e1641217f14 –

+0

使用答案中的更新信息,你只需要添加你的靜態規則。 –

+0

@JulieS。您必須使用自己的靜態文件名來更改rewriteMap鍵和值。如果你想刪除HTML擴展名,你需要插入另一個規則。 –