Joo*_*asL 5 asp.net iis visual-studio asp.net-mvc-4
我创建了一个网站并将其部署到Windows Azure.在开发过程中的某个地方,我从项目属性中启用了SSL,并且所有内容(https地址)在localhost和我部署网站的Azure网站上运行良好.
现在我的Azure试用版即将到期,我正在将我的网站移动到另一个免费的asp.net托管,不支持SSL而不付费.
所以我认为它会变得简单,只需将SSL Enabled设置为False,就像我第一次开始开发时一切都很好,但事实并非如此.
禁用SSL后,我的网站拒绝工作.打开IIS Express的Visual Studio设置图片,显示正确的地址上有服务器:http://db.tt/EKTcxPsd
当我从Visual Studio启动该站点时,它开始加载页面localhost:44300.几秒钟后,我被重定向到https://localhost显示"网页不可用"错误.图片:http://db.tt/VntZTpKD
我尝试删除IISExpress文件夹并重新启动visual studio.重新创建的applicationhost.config文件具有正确的信息(据我所知)
<site name="PrototypeNew-bootstrap3" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="E:\path-shortened\Visual Studio 2013\Projects\PrototypeNew\PrototypeNew-branch" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:44300:localhost" />
</bindings>
</site>
Run Code Online (Sandbox Code Playgroud)
将网站发布到托管环境后,我遇到了同样的问题.要将http://mywebsite.com我重定向到https://mywebsite.com并显示与localhost页面相同的错误.
如果我重新启用SSL,那么我的localhost上的https地址开始正常工作.
有谁知道这里发生了什么?是否有其他SSL交换机,我忘了关闭?为什么总是将我重定向到https
编辑.尝试创建一个新的asp.net mvc 4项目.推出它,它工作正常.将web.config复制到我的项目,它仍然重定向到https:localhost
Joo*_*asL 14
好的,我终于找到了解决方案.FilterConfig.cs如下所示:
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute());
filters.Add(new System.Web.Mvc.AuthorizeAttribute());
filters.Add(new RequireHttpsAttribute()); // problem
}
Run Code Online (Sandbox Code Playgroud)
我启用SSL时必须自动添加RequireHttpsAttribute,然后才删除它.手动删除它修复了问题.
| 归档时间: |
|
| 查看次数: |
8359 次 |
| 最近记录: |