我有使用SSL的MVC3应用程序。我想要特定的页面URL应该总是添加Https。有人能告诉我怎么做。以下是全球档案中的路线。
routes.MapRoute("root22",
"paybill",
new { controller = "Home", action = "PayBill" });
如果我的网址前面有https而不是网页中的所有路径都使用https或不需要,还有一件事吗?
答案 0 :(得分:5)
您不需要弄乱路由来完成此任务。只需在控制器/操作上使用[RequireHttps]
属性。
[RequireHttps]
public ViewResult YourAction()
如果可以,它将重定向到https。您的外发链接不必使用https,但在加载javascript,css,图像等时,否则用户可能会收到混合内容安全警告。
答案 1 :(得分:0)
如果您希望在使用该特定操作重定向后将整个网站设置为https,则上面的属性可以正常工作。
但是你想要只保护一个页面而不是整个网站,只需使用下面的代码即可。
http://www.codehosting.net/blog/BlogEngine/post/More-fiddling-with-MVC3-and-https.aspx