2010-08-18 103 views

回答

1

我相信你正在寻找

[RequireSsl(Redirect = true)] 

有一个讨论,你可以在这里找到

SSL pages under ASP.NET MVC

修改: 发现此链接可能是有用的

http://blog.stevensanderson.com/2008/08/05/adding-httpsssl-support-to-aspnet-mvc-routing/

+0

在发布版本的MVC2中,RequireSsl属性被重命名为RequireHttps。 – LukeH 2010-08-18 00:56:21

+0

标记为答案,因为链接中包含答案,我正在寻找基本上是什么。 http://weblogs.asp.net/cibrax/archive/2009/01/19/running-a-partial-ssl-website-in-asp-net-mvc.aspx – chobo2 2010-08-19 22:41:52

3

您可以使用适当的控制器和/或行动RequireHttpsAttribute

[RequireHttps] 
public class SecureController : Controller 
{ 
    public ActionResult YourAction() 
    { 
     // ... 
    } 
} 

// ... 

public class YourController : Controller 
{ 
    [RequireHttps] 
    public ActionResult SecureAction() 
    { 
     // ... 
    } 
} 
+0

是的,我做到这一点。但是,如果用户在他们的地址栏中没有https:它会崩溃,说他们没有使用SSL。我希望如此,当他们来到这个网页时,它强制网址拥有https。 – chobo2 2010-08-18 00:40:49

+1

上面应该工作,知道你已经成功地为你的网站创建了一个签名证书,并且如果你没有使用调试模式(点击f5) – 2010-08-18 00:50:38

+0

他们没有在这个RequireHttps上做很神的工作,因为它没有考虑到对于本地主机,它也不会将请求更改为https。它留给用户输入https,我不希望有任何用户必须做。最后我做了这样的事情 http://weblogs.asp.net/cibrax/archive/2009/01/19/running-a-partial-ssl-website-in-asp-net-mvc.aspx – chobo2 2010-08-19 22:41:30

相关问题