问题标签 [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.
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 中添加我自己/首选的站点。
node.js - 如何阻止 Azure DocumentDB 模拟器将 localhost 重定向到 HTTPS?
每当我启动它时,它都会发送一个HSTS 标头,这意味着现在每个请求都会从 重定向http://localhost
到https://localhost
.
这是使用 node.js 在本地开发时的 PITA。
有没有办法阻止它这样做?
apache - 如何禁用 HSTS 并强制重定向到 http?
我最近刚刚在一个旧域名上为客户建立了一个新站点。显然在过去的某个时候,有人在域上启用了 HSTS,所以有些人在访问它时收到“您的连接不是私有的”错误。为了解决这个问题,我得到了一个 Let's Encrypt SSL Certificate 并把
在设置了它的浏览器中禁用 HSTS 的标题中。
现在的问题是,有了这个设置,人们仍然可以使用 https 浏览网站(因为它现在有一个有效的证书)。他们还可以在 https 上添加书签等。一旦我让证书过期,这将是一个问题(我将这样做,因为他们不需要它。)
所以我在 .htaccess 文件中添加了一个重定向:
但是有了这两个设置,现在有一个重定向循环。如果我使用没有重定向的 HSTS 禁用代码,我可以访问该站点一次以禁用 HSTS,重新添加重定向,然后正常访问它,但显然我不能为每个用户都这样做。我最好的猜测是,即使 HSTS 代码放在 .htaccess 文件中的重定向之前,也会在浏览器禁用 HSTS 之前触发重定向并导致重定向循环。
有什么办法可以解决这个问题吗?
谢谢!
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
去看看是这样的:
在“删除域”下输入“facebook.com”后,我仍然可以在下面的输入框中查询“facebook.com”。
我尝试清除 chrome 上的所有用户数据,关闭并重新打开 chrome,甚至使用隐身模式。
为什么 chrome 仍将所有对 facebook.com 的请求重定向到 https?
chrome://net-internals#hsts
如果不可靠,我该如何禁用它?
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/com
有nameserver 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 重定向来自哪里?
rest - 如何在我的 Grails 应用程序 REST 中将 http 转换为 https?基本实现 HTTP 严格传输安全
我在过滤器中使用了以下代码,但它无法使我的 http 变为 https。我不确定是否需要在 resources.groovy 中注册它,因为我对 groovy 并不陌生。
同样,我也需要实现 X-Content-Type-Options 并对其进行研究。
ssl - HSTS 应至少为 180 天,为什么?
我在 ssllabs 对我的网站进行了测试。我启用了 HSTS 90 天,因为我不知道我将使用 SSL 多久,而我当前的证书在 89 天后结束。
现在我收到警告:
太短(少于 180 天) max-age=7776000
这让我想知道,为什么最少要 180 天。长 HSTS 背后的原因是什么?
ruby-on-rails - 如何在 Rails 中关闭 HSTS 的 includeSubDomains?
我不想要这个includeSubDomains
选项
这似乎不起作用:
我究竟做错了什么?
导轨 5.0.1
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)
cas - 在 CAS Web 应用程序中启用 HSTS
我有一个 CAS(中央身份验证服务)集成 Web 应用程序。CAS webapp 登录 (/cas/login) 的默认实现未通过 HSTS 策略 (Strict-Transport-Security) 强制执行。除了自定义身份验证处理程序之外,其他所有内容都是项目中使用的默认实现。所以我的问题是在响应中设置 HSTS 标头的位置。
请在这方面帮助我。谢谢 :)