错误404.使用IIS7.5 URL重定向从HTTP到HTTPS

时间:2014-10-24 18:47:32

标签: iis redirect ssl https http-status-code-404

问题

我收到了恼人的404错误。

简而言之,https重定向无效。我有IIS7.5应用程序并使用Microsoft的URL Rewrite Module 2.0。

代码

我已按照herehere的说明执行IIS HTTP到HTTPS重定向。

尝试

  • 我重做了IIS进程。没有。同样的问题。
  • 尝试取代^ OFF $
  • 谷歌搜索。空了。希望这个问题可以帮助未来的用户。

显然,我不理解我的问题。我知道404意味着客户可以联系服务器,但有人服务器不能正确地促进我的请求。令我感到困惑的是,我认为上面给出的程序会使这个程序变得非常简单。

我想要做的就是把它带到哪里无所谓如果我放入myapplication.herp.derp.edu或http地址,它可以重定向。

2 个答案:

答案 0 :(得分:0)

解决方案

我无法让URL重写2.0工作。解决方案是使用webconfig在IIS上创建一个空的第二个网站。然后我告诉它从http://myapplication.herp.derp.eduhttps://myapplication.herp.derp.edu的http重新路由。

答案 1 :(得分:0)

TL; DR:

确保您拥有

    在端口80上的
  • HTTP 绑定
    • 选择您的网站
    • 点击Bindings
    • 单击Add...并在端口80上为您的主机名添加HTTP绑定
  • 已禁用Require SSL
    • 选择您的网站
    • 打开SSL Settings
    • 取消选中Require SSL

说明:

Http 404表示找不到请求的资源。换句话说,Web服务器正在告诉您URL http://myhostname.com:80/(为清楚起见而明确编写的端口)中不存在资源

由于您将IIS网站配置为使用HTTPS,因此

您可能删除了 HTTP绑定

http/All Unassigned:80:myhostname.com

添加了 HTTPS绑定

https/All Unassigned:443:myhostname.com

结果,对http://myhostname.com:80/的所有请求都会路由到无处

如果在端口80上具有绑定,则不应收到Http 404

此外,如tl; dr中所述,请确保未启用Require SSL,否则将隐瞒Http 403(禁止使用资源)。