回答
在您的Web服務器中,只需將HTTP網址重定向到相應的HTTPS網址。請檢查http://www.jppinto.com/2010/03/automatically-redirect-http-requests-to-https-on-iis7-using-url-rewrite-2-0/
您可以添加代碼在你的Global.asax.cs文件
protected void Application_BeginRequest()
{
if (FormsAuthentication.RequireSSL && !Request.IsSecureConnection)
{
Response.Redirect(Request.Url.AbsoluteUri.Replace("http://", "https://"));
}
}
我試過這個解決方案,運行良好。但是如果我添加Application_BeginRequest(),我的網頁加載多次。那背後的原因是什麼? –
在Global.asax.cs
只需添加該代碼。考慮本地發展的Request.IsLocal
。
protected void Application_BeginRequest(object sender, EventArgs e)
{
HttpContext context = HttpContext.Current;
if (!context.Request.IsSecureConnection && !context.Request.IsLocal)
{
Response.Redirect(context.Request.Url.ToString().Replace("http:", "https:"));
}
}
我試過這個解決方案,運行良好。但是如果我添加Application_BeginRequest(),我的網頁加載多次。那背後的原因是什麼? –
我不明白'我的網頁加載多次'的意思。如果你請求** http **,它將被重定向到** https **,所以2個請求將被髮送到服務器。如果您請求** https **,則不會發生Response.Redirect – dimonser
是的,我知道2個請求將發送到服務器。但是,在這兩次請求之後,再次加載頁面,但沒有輸入'Application_BeginRequest'。我試圖創建一個示例網站,並添加'Application_BeginRequest'多次加載頁面,不明白爲什麼? –
做,這是在IIS中最簡單的方法。
在網站下選擇「SSL設置」並勾選'需要SSL'複選框並點擊應用。
這種方法的好處是它更安全(代碼中的錯誤不會允許非SSL請求),並且實現起來更容易,更快速。缺點是對HTTP URL的請求不會自動重定向,但您沒有聲明這是必需的。
如果是需求,也可以使用IIS URL Rewrite模塊實現此功能。
我試着實現URL重寫模塊,但在完成鏈接中提到的所有設置後,網站仍然運行在http上,而不是重定向到https –
@MicrosoftDN在鏈接中?我沒有發佈鏈接。您是否對錯誤的帖子發表評論(和投票)? –
- 1. 如何使網站僅與https工作
- 2. 如何在HTTPS網站上運行HTTP源JavaScript?
- 3. https在第三方非https網站上
- 4. 使用https從一個運行在http的網站訪問CDN
- 5. WP網站 - 從上運行的網站
- 6. 如何僅在部分網站上實現HTTPS?
- 7. 運行https的網站的地圖控件https
- 8. HTTPS網站上的Youtube Iframe
- 9. HTTPS網站上的HTTP
- 10. Chrome擴展程序未在https網站上加載使用https
- 11. 在https上運行gunicorn?
- 12. 在HTTPS上運行Grails
- 13. Docker - 在HTTPS上運行Jetty
- 14. 在Ipad上運行PHP網站原生
- 15. 在外部網站上運行MTurk HIT
- 16. 網站未在Chrome和Firefox上運行
- 17. 刷新後在網站上運行javascript
- 18. 讓我的網站在EC2上運行
- 19. 在網站加載上運行javascript
- 20. 在網站上運行Python文件
- 21. 在虛擬機上運行Sharepoint網站
- 22. 在網站上運行JavaScript命令
- 23. Javascript未在我的網站上運行
- 24. 在Wordpress上運行PHP網站
- 25. 在破損的網站上運行phantomjs
- 26. 在網站上運行java類
- 27. 在azure網站上運行processing.js
- 28. 在網站上運行C#程序
- 29. 在Docker上運行python網站
- 30. 在asp.net網站上運行powershell腳本
我試圖實現這種方法,但在完成鏈接中提到的所有設置後,網站仍然運行在http上而不是重定向到https。 –