使用IIS URL重寫從url中刪除www子域的最佳方法是什麼?使用IIS URL從地址中刪除www的正確方法重寫
23
A
回答
31
如果你想讓它與任何主機名(沒有硬編碼到規則)的工作,你會想要做這樣的事情:
<rule name="Remove www" stopProcessing="true">
<match url="(.*)" ignoreCase="true" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_HOST}" pattern="^www\.(.+)$" />
</conditions>
<action type="Redirect" url="http://{C:1}/{R:0}" appendQueryString="true" redirectType="Permanent" />
</rule>
在重定向動作中,{C:1}包含條件中的第二個捕獲組,而{R:0}包含規則(路徑)中的任何內容。 appendQueryString =「true」也會將任何查詢字符串附加到重定向(如果存在)。請記住,如果存在的話,任何URL哈希值都將在這個過程中丟失,因爲這些哈希值不會傳遞給服務器。
5
以下一個應該工作:
<system.webServer>
<rewrite>
<rules>
<rule name="Remove WWW" stopProcessing="true">
<match url="^(.*)$" />
<conditions>
<add input="{HTTP_HOST}" pattern="^(www\.)(.*)$" />
</conditions>
<action type="Redirect" url="http://www.example.com{PATH_INFO}" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
-1
要進行重定向,將兩個HTTP和HTTPS可用於
<rewrite>
<rules>
<rule name="Lose the www" enabled="true" stopProcessing="true">
<match url="(.*)" ignoreCase="true"/>
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_HOST}" pattern="^www\.(.*)$"/>
</conditions>
<action type="Redirect" redirectType="Permanent" url="{SchemeMap:{HTTPS}}://{C:1}/{R:1}" appendQueryString="true" />
</rule>
</rules>
<rewriteMaps>
<rewriteMap name="SchemeMap">
<add key="on" value="https" />
<add key="off" value="http" />
</rewriteMap>
</rewriteMaps>
</rewrite>
2
IIS將自動爲您完成以下事項:
選擇網站> URL重寫>新規則>規範主機姓名:)
+0
最佳答案當然。 –
相關問題
- 1. IIS Url重寫IP地址
- 2. IIS URL重寫非www
- 3. URL重寫不正確IIS
- 4. apache url重寫不會從url中刪除IP地址
- 5. IIS重寫 - 從URL中刪除真正的文件夾
- 6. 從url中刪除www
- 7. iis的8 URL重寫HTTPS和www
- 8. UrlRewrite 2.0不會從IIS 8.5中的url中刪除www
- 9. 重定向從www網址到非www網址在iis中
- 10. 通過IIS URL重寫刪除index.cfm
- 11. 如何以正確的方式重寫或刪除laravel 5 url?
- 12. DotNetNuke中的URL重寫刪除大塊地址(並讀取Cookie?)
- 13. htaccess從URL方面刪除www RewriteBase
- 14. 刪除/重寫從URL
- 15. 即使使用URL重寫,IIS強制也會刪除它
- 16. 使用正確的URL重定向非www到www參數
- 17. IIS URL重寫 - 從URL中刪除目錄而不進行重定向操作
- 18. 從wordpress的URL中刪除www?
- 19. 如何刪除「http://」,「https://」和「www。」從一個URL使用國防部重寫?
- 20. URL重寫使用IIS
- 21. htaccess網址重寫問題從url中刪除wordpress年,月,日
- 22. 在IIS 6中寫URL重寫規則的地方
- 23. IIS 8.5 URL重寫非www到www不工作
- 24. 如何使用struts2重寫URL地址?
- 25. 使用nginx的重寫根URL刪除/網址目錄
- 26. 刪除www。從主機名使用Nginx重寫
- 27. 重寫引擎正在從我的網址中刪除斜線
- 28. htaccess重寫 - 從url中刪除字符
- 29. 在IIS中重寫URL並重寫URL
- 30. 在IIS7上重寫無法正確使用「www」
我從來沒有對第一個答案中的硬編碼片段感到興奮,很高興我終於可以標記在這個問題上的答案。 –
如果有人進入https,該怎麼辦?你不想自動將它們重定向到http,是嗎? – jedmao
@mrjedmao好點!我會研究它:) –