是否可以关闭端口 80 并仍然使用端口 443?

All*_*ate 11 ssl https apache-2.2

我有一个只能通过 HTTPS 访问的 Web 应用程序。

  • 完全关闭端口 80 是否可能,并且是一个明智的主意?
  • 除了浏览器无法以非加密方式访问它之外,关闭端口 80 是否有任何缺点?

搜索引擎可见性不是优先事项。

Dan*_*ane 10

您可以指定 apache 仅侦听特定端口、所有站点或仅侦听 VirtualHost。请参阅指令。

如果您有该站点的名称或 ip 虚拟主机,只需将其配置为仅使用端口 443。将您站点的所有请求重定向到端口 80 到 443 也是一个好主意。维基百科上有一些关于如何使用的示例使用HTTP Strict Transport Security实现这一点,并使用 Apache 的 vhost 示例。

  • 另一种好方法是让 80 监听,但只需重定向将所有请求发送到 `https://`。 (3认同)
  • 有些人可能会争辩说,从安全角度来看,HTTP -> HTTPS 重定向是一个坏主意。如果有问题的网站有一个使用 GET 方法的网站,以及指向该网站的非 https 版本的操作,会发生什么情况?如果最终用户降低了浏览器的安全设置,并且您的站点具有 http -> https 重定向,那么您可能会损害他们的安全性和隐私性。HSTS 的部分创建是因为 http -> https 重定向的问题。http://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security (3认同)
  • 值得注意的是,在大多数情况下,您仍然需要 HTTP->HTTPS 重定向,因为不允许通过 HTTP(非安全)连接发送 HSTS 标头。然而,符合要求的浏览器永远不会发出第二个纯 HTTP 请求。此外,IE(自版本 10 起)和 Safari(自版本 6 起)不支持 HSTS,因此,如果您不想完全关闭端口 80,您仍然会受到重定向的困扰。 (2认同)