我有一些ASP .NET MVC4網站,我必須首先把開發地點放在測試。開發網站沒有SSL,但LIVE有它。要求開發和現場網站的小問題
好吧。我必須在20個控制器中使用[Requirehttps]
,並且我無法在每次在DEV網站下測試時對其進行評論。
是否有任何方法來配置[Requirehttps]至少基於一些web.config設置或可能有另一種方法?我的意思是,每次我在LIVE下發佈網站時,我都不喜歡評論20 [Requirehttps]
。
任何線索?
我有一些ASP .NET MVC4網站,我必須首先把開發地點放在測試。開發網站沒有SSL,但LIVE有它。要求開發和現場網站的小問題
好吧。我必須在20個控制器中使用[Requirehttps]
,並且我無法在每次在DEV網站下測試時對其進行評論。
是否有任何方法來配置[Requirehttps]至少基於一些web.config設置或可能有另一種方法?我的意思是,每次我在LIVE下發佈網站時,我都不喜歡評論20 [Requirehttps]
。
任何線索?
覆蓋的RequireHttpsAttribute
的web.config
<appSettings>
<add key="SSL" value="false" />
</appSettings>
MyHttpsAttribute.cs
public class MyHttpsAttribute : RequireHttpsAttribute, IAuthorizationFilter
{
public override void OnAuthorization(AuthorizationContext filterContext)
{
if (bool.Parse(AppSettings["SSL"]) != true) {
return;
}
base.OnAuthorization(filterContext);
}
}
BaseController
[MyHttps]
public abstract class BaseController : Controller
{
...
}
你是天才,男人!謝謝! – 2013-03-02 00:59:12
歡迎來到SO。希望能看到更多你的帖子 – 2013-03-02 01:31:29
如果調試/ RELE之間切換您可以在您的代碼中執行此操作:
#if !DEBUG
[RequireHttps]
#endif
這不是您的初始問題的答案,但您爲什麼不在您的開發服務器上啓用https? – OakNinja 2013-03-02 00:20:27
@OakNinja嗯,我的網名錶示他不能將GoDaddy Sertificate應用到開發網站... – 2013-03-02 00:28:34
您可以爲您的開發人員設置自簽名證書。機。請參閱:http://www.sslshopper.com/article-how-to-create-a-self-signed-certificate-in-iis-7.html和部分:生成具有正確公用名稱的自簽名證書 – OakNinja 2013-03-02 00:32:42