Dav*_*ing 80 asp.net asp.net-mvc ssl https
如何在基于ASP.NET MVC的站点中的某些页面上使用HTTPS?
史蒂夫桑德森有一个非常好的教程,如何在预览4上以干燥方式执行此操作:
http://blog.codeville.net/2008/08/05/adding-httpsssl-support-to-aspnet-mvc-routing/
预览5有更好/更新的方式吗?
Ama*_*ere 92
如果您使用的是ASP.NET MVC 2 Preview 2或更高版本,现在可以使用:
[RequireHttps]
public ActionResult Login()
{
return View();
}
Run Code Online (Sandbox Code Playgroud)
但是,订单参数值得注意,如此处所述.
Sim*_*ver 17
MVCFutures具有'RequireSSL'属性.
(感谢Adam 在你更新的博文中指出这一点)
如果您希望http://请求自动成为https://,请将其应用于您的操作方法,并使用'Redirect = true':
[RequireSsl(Redirect = true)]
Run Code Online (Sandbox Code Playgroud)
另请参阅:仅限生产中的ASP.NET MVC RequireHttps
正如Amadiere所写,[RequireHttps]在MVC 2中用于输入 HTTPS 非常有用.但是,如果您只想对某些页面使用HTTPS,就像您所说的那样,MVC 2并没有给您任何爱 - 一旦将用户切换到HTTPS,他们就会被卡在那里直到您手动重定向它们.
我使用的方法是使用另一个自定义属性,[ExitHttpsIfNotRequired].当连接到控制器或操作时,如果出现以下情况,它将重定向到HTTP:
这里发布的内容太大了,但您可以在此处看到代码以及其他一些细节.
这是Dan Wahlin最近发表的一篇文章:
http://weblogs.asp.net/dwahlin/archive/2009/08/25/requiring-ssl-for-asp-net-mvc-controllers.aspx
他使用ActionFilter属性.
| 归档时间: |
|
| 查看次数: |
47377 次 |
| 最近记录: |