2017-07-11 86 views
1

這是請求:簡單的URL重寫工作與IIS快遞,但未能在IIS上10

http://localhost:8080/!/angular/angular-loading-bar/0.9.0/loading-bar.min.css 

我希望它被改寫爲:

http://localhost:8080/angular/angular-loading-bar/0.9.0/loading-bar.min.css 

唯一的變化是,!在開始將被刪除。

這裏是我使用模式:

<system.webServer> 
    <rewrite> 
    <rules> 
     <rule name="AngularJS Routes 1" stopProcessing="true"> 
     <match url="!\/(\S+)" />   
     <action type="Rewrite" url="/{R:1}" /> 
     </rule> 
     <rule name="AngularJS Routes1" stopProcessing="true"> 
     <match url=".*" /> 
     <conditions logicalGrouping="MatchAll"> 
      <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> 
      <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> 
      <add input="{REQUEST_URI}" pattern="^/(api)" negate="true" /> 
     </conditions> 
     <action type="Rewrite" url="/" /> 
     </rule> 
    </rules> 
    </rewrite> 
</system.webServer> 

夠搞怪,它的工作原理與IIS快遞,但不與IIS 10,雖然URL重寫模塊被安裝並啓用。 甚至,在IIS的入站規則部分下,當我測試url時,它給了我預期的輸出(去掉「!」)。但是當我運行網站時,它不起作用。在聊天

+0

我試着用你的規則與IIS 10,它對我來說工作正常。我用'!'猜測URL是404,你能否檢查這個路徑,如果是正確的:http://i.imgur.com/kO1S6iq.png –

+0

鏈接無效。請編輯 – Jude

+0

鏈接正在爲我工​​作,它有404頁的屏幕截圖 –

回答

1

此基礎上我們與@Jude討論:

出於某種原因,IIS沒有必須RewriteModule在IIS。

修復URL重寫模塊幫助:

進入控制面板 - > PROGRAMM和功能。查找URL重寫並修復它