2

在 IIS7.5 中,我有一个将 http 请求重定向到 https 的 URL 重写规则。如果我选中“需要 SSL”,我会得到 403 Unauthorized 而不是重定向,这是有道理的。

有没有办法一起使用它们?还会有好处吗?我假设没有,因为每个 http 请求都会被重定向,但我在这里检查以防我错了。

这安全吗?

4

1 回答 1

5

这两个选项的工作方式非常不同。

如果您使用 Require SSL 选项,则必须通过 HTTPS 访问您网站的每个页面,这意味着(如您所见),如果您忘记了 HTTPS 并尝试使用 HTTP 访问,您将获得 403 Unauthorized .

如果您使用 URL 重写模块,您可以将某些页面或整个网站设置为重定向到 HTTPS(如果需要,部分返回到 HTTP),如果用户忘记了 HTTPS 并点击了 HTTP,他/她将重定向到 HTTPS 网址。

至于让他们一起工作,有一个解决方案,但我真的不明白这一点:

[...] 您需要禁用网站的“要求 SSL”复选框。如果您不想这样做,那么您可以在 IIS 中创建两个网站——一个使用 http 绑定,另一个使用 https 绑定——然后将此规则添加到使用 http 绑定的站点的 web.config 文件中。

http://blogs.iis.net/ruslany/archive/2009/04/08/10-url-rewriting-tips-and-tricks.aspx
(部分4. Redirect to HTTPS

于 2013-03-11T18:53:24.997 回答