问题标签 [hsts]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
76 浏览

url-rewriting - 浏览器中特定域的 URL 方案重写,从 HTTP 到 HTTPS

有没有办法配置浏览器(Firefox/Chrome),如果遇到 HTTP URL(在地址栏上单击或输入 - 例如:http ://abc.xyz.com/ ...),它会将其修改为https URL https://abc.xyz.com/ ...

请注意,站点 abc.xyz.com 接受同一 URL 的 http:// 和 https:// 方案。本站不对 http:// 链接做任何重定向来强制执行 https 方案,我也不想通过 http:// 方案访问本站。

我知道这可以在网络服务器代理的帮助下完成(例如:Apache 的 mod_rewrite),但我正在寻找一个仅限浏览器的解决方案(例如,通过浏览器的“about:config”变量或一些浏览器插件,或一些其他方法)。

将 abc.xyz.com 添加到浏览器的 HSTS 预加载列表似乎是最好的方法,但这只能由 abc.xyz.com 站点的管理员发起和设置。“HTTPS Everywhere”浏览器插件接近了,但我找不到如何在它的 UI 中添加我自己/首选的站点。

0 投票
1 回答
154 浏览

node.js - 如何阻止 Azure DocumentDB 模拟器将 localhost 重定向到 HTTPS?

每当我启动它时,它都会发送一个HSTS 标头,这意味着现在每个请求都会从 重定向http://localhosthttps://localhost.

这是使用 node.js 在本地开发时的 PITA。

有没有办法阻止它这样做?

0 投票
0 回答
1355 浏览

apache - 如何禁用 HSTS 并强制重定向到 http?

我最近刚刚在一个旧域名上为客户建立了一个新站点。显然在过去的某个时候,有人在域上启用了 HSTS,所以有些人在访问它时收到“您的连接不是私有的”错误。为了解决这个问题,我得到了一个 Let's Encrypt SSL Certificate 并把

在设置了它的浏览器中禁用 HSTS 的标题中。

现在的问题是,有了这个设置,人们仍然可以使用 https 浏览网站(因为它现在有一个有效的证书)。他们还可以在 https 上添加书签等。一旦我让证书过期,这将是一个问题(我将这样做,因为他们不需要它。)

所以我在 .htaccess 文件中添加了一个重定向:

但是有了这两个设置,现在有一个重定向循环。如果我使用没有重定向的 HSTS 禁用代码,我可以访问该站点一次以禁用 HSTS,重新添加重定向,然后正常访问它,但显然我不能为每个用户都这样做。我最好的猜测是,即使 HSTS 代码放在 .htaccess 文件中的重定向之前,也会在浏览器禁用 HSTS 之前触发重定向并导致重定向循环。

有什么办法可以解决这个问题吗?

谢谢!

0 投票
2 回答
3114 浏览

google-chrome - 删除 facebook.com 的 Chrome HSTS 不起作用

我目前正在我的网站上进行一些调试,其中涉及调用 facebook API。

我已经安装了 dnsmasq 以使用我的 mac os X 将所有请求重定向到 facebook.com 到 127.0.0.1

我有一个回显服务器,它将在我的笔记本电脑的端口 80 上打印出所有原始 http 请求标头。

现在我的问题来了。当我访问 facebook.com 时,我意识到 chrome 会自动将 facebook.com 的 http:// 转发到 https://

我用谷歌搜索并找到了删除此 HSTS 问题的方法。我chrome://net-internals#hsts去看看是这样的:

HSTS 铬图像

在“删除域”下输入“facebook.com”后,我仍然可以在下面的输入框中查询“facebook.com”。

我尝试清除 chrome 上的所有用户数据,关闭并重新打开 chrome,甚至使用隐身模式。

  • 为什么 chrome 仍将所有对 facebook.com 的请求重定向到 https?

  • chrome://net-internals#hsts如果不可靠,我该如何禁用它?

0 投票
1 回答
243 浏览

google-chrome - Dnsmasq 未能捕获 https 的 307 重定向?

我目前正在我的网站上进行一些调试,其中涉及调用 facebook API。我已经安装了 dnsmasq 以使用我的 mac os X 将所有请求重定向到 facebook.com 到 127.0.0.1

这是我在 dnsmasq.conf 中的条目:

地址=/facebook.com/127.0.0.1

我也/etc/resolver/comnameserver 127.0.0.1

当我打开 dnsmasq 时,访问 facebook.com 将导致 Chrome 出现 PAGE NOT FOUND 错误。这表明我的 dnsmasq 正在工作。

但是,我注意到由于 HSTS ,chrome 会将http://www.facebook.com重定向到https://www.facebook.com 。我继续 chrome://net-internals#hsts 删除 facebook.com 的条目。

奇怪的是,当我调试时,我看到 facebook.com 确实为http://www.facebook.com返回了 307 重定向(见图)

在此处输入图像描述

这很奇怪,因为域 facebook.com 目前在我的计算机上被解析为 127.0.0.1!此外,当我深入研究该请求时,我确实看到该请求是有效的:

在此处输入图像描述

如果 facebook.com 无法解析,这个 307 重定向来自哪里?

0 投票
1 回答
79 浏览

rest - 如何在我的 Grails 应用程序 REST 中将 http 转换为 https?基本实现 HTTP 严格传输安全

我在过滤器中使用了以下代码,但它无法使我的 http 变为 https。我不确定是否需要在 resources.groovy 中注册它,因为我对 groovy 并不陌生。

同样,我也需要实现 X-Content-Type-Options 并对其进行研究。

0 投票
1 回答
1695 浏览

ssl - HSTS 应至少为 180 天,为什么?

我在 ssllabs 对我的网站进行了测试。我启用了 HSTS 90 天,因为我不知道我将使用 SSL 多久,而我当前的证书在 89 天后结束。

现在我收到警告:

太短(少于 180 天) max-age=7776000

这让我想知道,为什么最少要 180 天。长 HSTS 背后的原因是什么?

0 投票
2 回答
1361 浏览

ruby-on-rails - 如何在 Rails 中关闭 HSTS 的 includeSubDomains?

我不想要这个includeSubDomains选项

这似乎不起作用:

我究竟做错了什么?

导轨 5.0.1

0 投票
1 回答
1055 浏览

ssl - HSTS 预加载列表 - www 网站可能存在的 SEO 问题

让我在这里解释一个现实世界的情况。

我运行网站https://www.liloo.ro,我想为其启用 HSTS(+HSTS 预加载)。

问题在于,为了将其提交到预加载列表主域必须使用 HSTS 标头进行响应。

让我更准确地说:为了将站点提交到预加载列表并满足要求,第一个重定向必须是到主域的 https 版本。

在我的情况下,我不能从 http 直接重定向到 https + www -> 我必须首先从 http 重定向到 https(在此处提供主域名 HSTS 标头)并再次重定向到 https + www

这带来了巨大的重定向稀释 SEO 问题(更不用说链式重定向并不理想的事实)。

所以我看这个的每一种方式,我要么放弃 HSTS 预加载列表,要么使用链式重定向。这两种选择看起来都不理想。

唯一可能的解决方法可能是预加载列表要求中的某些内容,但我不太明白它的含义:

如果您正在提供重定向,则该重定向必须具有 HSTS 标头,而不是它重定向到的页面。

据我所知,在进行重定向时没有办法提供 HSTS 标头之类的东西……但也许我错了。任何想法如何解决这个问题?...或者我应该完全放弃 HSTS 预加载列表,因为我的网站只有 www 吗?

在这一点上,我不能只是从 www 切换到非 www ......我知道这将是“简单”的解决方案。

任何想法 - 非常感谢。我注意到这个线程 在重定向到 web.config 中的 www 子域期间在域根上添加 HSTS http 标头 ...但我怀疑它是否解决了问题(+ 我正在使用 nginx)

0 投票
1 回答
194 浏览

cas - 在 CAS Web 应用程序中启用 HSTS

我有一个 CAS(中央身份验证服务)集成 Web 应用程序。CAS webapp 登录 (/cas/login) 的默认实现未通过 HSTS 策略 (Strict-Transport-Security) 强制执行。除了自定义身份验证处理程序之外,其他所有内容都是项目中使用的默认实现。所以我的问题是在响应中设置 HSTS 标头的位置。

请在这方面帮助我。谢谢 :)