在 ASP.NET MVC 4/5 应用程序发布的时候,遇到一个问题,在本应用程序中进行身份验证是可以,但不能和其他“二级域名”共享,在其他应用程序身份验证,不能和本应用程序共享,示例代码:
System.Web.Security.FormsAuthentication.SetAuthCookie("蟋蟀", true);
webconfig 配置如下:
<system.web><pages validateRequest="false"></pages><authentication mode="Forms"><forms name=".DottextCookie" domain=".test.com" loginUrl="~/Account/Login" protection="All" /></authentication><compilation debug="true" targetFramework="4.5.1" /><httpRuntime targetFramework="4.5.1" requestValidationMode="2.0" /></system.web>
比较“奇葩”的解决方式是:把 httpRuntime 节点中的“targetFramework="4.5.1"”去掉就好了,HttpRuntime.TargetFramework 属性参考:system.web.httpruntime.targetframework,感觉应该是应用程序的 Framework 版本和服务器 Framework 版本不一致所引起的,至于具体原因,尚不得知!