我一直在爲ASP.Net應用程序重定向到SSL頁面代碼而苦苦掙扎。我仍然沒有找到一個好的解決方案。問題是,如果我在本地主機上,例如當我正在調試或編碼時,我想讓代碼被禁用,但我無法使其工作。另一個問題是它必須重定向到另一個URL,因此http://www.xx.com應重定向到https://Secure.xxx.com。有任何想法嗎?什麼是在ASP.Net中編碼重定向到SSL頁面的最佳方式
2
A
回答
5
如果您希望在頁面級別設置ssl屬性,則應該創建一個custom attribute。現在
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
public sealed class HttpsAttribute : Attribute{}
[HttpsAttribute]
public partial class PageSecured: YourCustomBasePage {}
如果attribute
設置基本頁面YourCustomBasePage
可以檢查:
protected override void OnInit(EventArgs e){
if(!Request.IsSecureConnection){
HttpsAttribute secureAttribute = (HttpsAttribute)Attribute.GetCustomAttribute(GetType(), typeof(HttpsAttribute));
if(secureAttribute != null){
//Build your https://Secure.xxx.com url
UriBuilder httpsUrl = new UriBuilder(Request.Url){Scheme = Uri.UriSchemeHttps, Port = 443};
Response.Redirect(httpsUrl.Uri.ToString());
}
}
}
要重定向到HTTPS
排除本地機器,你可以在你的web.config
使用配置值。
private bool HTTPSEnabled{
get{ return ConfigurationManager.AppSettings["HTTPSEnabled"] == null || Boolean.Parse(ConfigurationManager.AppSettings["HTTPSEnabled"]); }
}
,你檢查添加到第一個條件
if(!Request.IsSecureConnection && HTTPSEnabled)
1
我用this庫生產。我更喜歡設置屬性,因爲它是配置驅動的,並且可以配置爲良好的級別。這就是說,我不知道它是否可以重定向到一個子域。我甚至不知道爲什麼你會希望發生這種情況。
相關問題
- 1. 在CakePHP中301重定向頁面的最佳方式是什麼?
- 2. 什麼是編程式添加.swf到asp.net頁面的最佳方式?
- 3. 在Selenium中聲明重定向的最佳方式是什麼?
- 4. 在php中重定向url的最佳方式是什麼?
- 5. 什麼是將www.example.com重定向到example.com的最佳方式
- 6. 爲重定向到顯示頁面的redirect_to方法編寫參數的最佳實踐方式是什麼?
- 7. 什麼是貝寶捐贈後限制重定向頁面的最佳方式
- 8. 重定向到提供頁面的最佳方式
- 9. 在ASP.NET MVC中編寫表單的最佳方式是什麼?
- 10. 在可可中將stdout重定向到NSTextView的最佳方式是什麼?
- 11. 做移動重定向的最佳方式是什麼?
- 12. 處理輸出重定向的最佳方式是什麼?
- 13. 在iPhone中創建Feed頁面的最佳方式是什麼?
- 14. 在codeigniter中從頁面註銷的最佳方式是什麼?
- 15. 什麼是在IIS7 + ASP.NET中重現停放頁面行爲的最佳方法
- 16. 在網址中「嵌入」頁碼的最佳方式是什麼?
- 17. 將非www重定向到www的最佳方法是什麼?
- 18. 轉換到MVC編碼的最佳方式是什麼?
- 19. 什麼是在ASP.NET中編碼導航邏輯的最佳方式
- 20. 什麼是將silverlight頁面包含到asp.net-mvc網站的最佳方式
- 21. 在我的ASPX頁面中加載ASP頁面的最佳方式是什麼?
- 22. 在另一個網站中重用頁面的最佳方式是什麼?
- 23. 什麼是重定向1000頁最有效的方式?
- 24. 用htaccess重定向頁面的最佳方式
- 25. 什麼是使asp.net中的某些頁面需要登錄的最佳方式?
- 26. ASP.net:處理清理頁面的最佳方法是什麼?
- 27. 在PHP中重定向/重新加載頁面的最佳方式
- 28. 什麼是避免在django中打開重定向的最佳方式
- 29. 什麼是使用hashtag在PHP中重定向的最佳方式?
- 30. 什麼是在IIS中處理數千個URL重定向的最佳方式
嘗試[http://stackoverflow.com/questions/47089/best-way-in-asp-net-to-force-https-for-an-entire-site][1] [1]:http://stackoverflow.com/questions/47089/best-way-in-asp-net-to-force-https-for-an-entire-site – kervin