IIS 7.5上的URL重写问题

IIS 7.5上的URL重写问题,iis,url-rewriting,iis-7.5,Iis,Url Rewriting,Iis 7.5,我正在尝试使用IIS 7.5的URL重写模块将我的ASP.NET网站的所有HTTP请求重定向到HTTPS。该网站目前运行良好,但强制用户在地址栏中键入https://地址 我按照指示去做。一切似乎都很好:我试着把规则放在web.config中,它显示在UI中;我也做了相反的操作,当我使用UI添加规则时,可以看到web.config中的更改。我要求对该网站进行检查。不幸的是,当我试图通过http://访问该站点时,我仍然得到了404 我尝试了几个不同的操作URL,包括{HTTP_HOST}/{R:

我正在尝试使用IIS 7.5的URL重写模块将我的ASP.NET网站的所有HTTP请求重定向到HTTPS。该网站目前运行良好,但强制用户在地址栏中键入https://地址

我按照指示去做。一切似乎都很好:我试着把规则放在web.config中,它显示在UI中;我也做了相反的操作,当我使用UI添加规则时,可以看到web.config中的更改。我要求对该网站进行检查。不幸的是,当我试图通过http://访问该站点时,我仍然得到了404

我尝试了几个不同的操作URL,包括{HTTP_HOST}/{R:1}和下面显示的一个。。什么都不管用

<system.webServer>
  <rewrite>
    <rules>
      <rule name="Redirect to https" stopProcessing="true">
        <match url="(.*)" />
        <conditions>
        <add input="{HTTPS}" pattern="off" ignoreCase="true" />
        </conditions>
        <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}"
         redirectType="SeeOther" />
      </rule>
    </rules>
  </rewrite>
</system.webServer>

我对这一点还不太熟悉,在这一点上我很沮丧。看起来这应该容易多了。如有任何建议,将不胜感激,谢谢

从ServerFault重新发布,因为它已经有一段时间没有应答了

HTTP错误404。找不到请求的资源

您实际上有HTTP 80端口的绑定吗?听起来你没有(只有HTTPS)

我询问的原因是引用的文本是确切的消息,如果我的请求对IIS域未知(当没有定义全面捕获时),或者域未绑定到请求的端口,我将看到该消息

HTTP错误404。找不到请求的资源

您实际上有HTTP 80端口的绑定吗?听起来你没有(只有HTTPS)


我询问的原因是引用的文本是确切的消息,如果我请求的是IIS域未知的(当没有定义全面捕获时)或域未绑定到请求的端口,我将看到该消息。

规则本身是绝对正确的——在这里起作用。一定是别的东西。您得到的404错误是什么(打开显示详细错误消息)?我无法让它显示比“HTTP错误404.未找到请求的资源”更详细的信息。我有customErrors=“RemoteOnly”和debug=“true”。尝试通过http在本地主机上点击它,我会收到相同的消息。我不能使用角色,因为这是我无法访问的登录页面。规则本身非常好——在这里工作。一定是别的东西。您得到的404错误是什么(打开显示详细错误消息)?我无法让它显示比“HTTP错误404.未找到请求的资源”更详细的信息。我有customErrors=“RemoteOnly”和debug=“true”。尝试通过http在本地主机上点击它,我会收到相同的消息。我不能使用角色,因为我无法进入登录页面。我就是这样。我没有端口80绑定,只有443,因此整个重定向设置无法执行,因为url(http)根本不存在。。。在这件事上浪费了这么多时间。谢谢我就是这样。我没有端口80绑定,只有443,因此整个重定向设置无法执行,因为url(http)根本不存在。。。在这件事上浪费了这么多时间。谢谢