Apache 如何阻止Chrome重定向到HTTPS?
几天前,Chrome开始将我在Wampserver中的所有vHost重定向到https。直到几天前,一切都很好,然后有一天我登录到我的网站上工作,Chrome说无法访问该网站,尽管我使用的是过去一直使用的URL。Wamp与Apache和MySQL一样运行,这些服务在错误日志中都没有任何错误 我已经尝试用Apache 如何阻止Chrome重定向到HTTPS?,apache,google-chrome,ssl,https,wamp,Apache,Google Chrome,Ssl,Https,Wamp,几天前,Chrome开始将我在Wampserver中的所有vHost重定向到https。直到几天前,一切都很好,然后有一天我登录到我的网站上工作,Chrome说无法访问该网站,尽管我使用的是过去一直使用的URL。Wamp与Apache和MySQL一样运行,这些服务在错误日志中都没有任何错误 我已经尝试用chrome://net-internals/#hsts但这没有任何作用。我还尝试安装SSL,看看Chrome是否会将其检测为安全连接。。。没有什么。我甚至尝试过完全重新安装Wamp(尽管vHos
chrome://net-internals/#hsts
但这没有任何作用。我还尝试安装SSL,看看Chrome是否会将其检测为安全连接。。。没有什么。我甚至尝试过完全重新安装Wamp(尽管vHost在其他浏览器中运行良好),但没有任何改变
Chrome中唯一有效的功能就是通过
http://localhost/site
。所有Apache vHost都会重定向到HTTPS。我在谷歌上搜索了又搜索,找不到任何能解决问题的方法。Chrome v63将.dev域强制转换为HTTPS。Internet工程任务组指定了哪些顶级域应用于本地开发,而.dev不在该列表中
谷歌拥有.dev顶级域名,并通过预加载的HST自动将所有.dev域名重定向到该网站的HTTPs版本
由于.dev是一个官方通用顶级域(gTLD),我们最好将本地开发后缀从.dev更改为其他名称,即使有其他解决方案(例如带有自签名证书的https)。因此,您应该使用.test、.example、.invalid或.localhost作为本地开发TLD。我无法改进@benedikt的答案,因为它是正确的。有很好的临时修复:
- ,如果您在本地设置了SSL(黑客攻击),这可能不起作用。它绕过了警告,但我的本地SSL设置不正确,并显示另一个本地站点。
- 还建议链接到chrome论坛,我还没有尝试过
仍然足够短,可以快速输入,描述,可能是未来的证明。我找到了一个适合我需要的快速解决方案,可以帮助其他人 我在开发时使用,我只是将代理参数设置为“testsite.dev”,它将在Chrome中正确运行 以下是我正在使用的命令:
browser-sync start --proxy "testsite.dev" --port "3000" --files "./**/*.*"
我也使用了.dev扩展名,将来会切换到其他域,但对于我现有的.dev站点,当出现隐私错误时,单击屏幕上的任意位置并键入“badidea”,chrome会将您重定向到该站点。它起作用了 解决方案1-选择保留的、经得起未来考验的gLTD,如.localhost或.test 编辑主机文件(对于Windows,它是C:\Windows\System32\Drivers\etc\hosts) 解决方案2-为.dev安装自签名证书
DocumentRoot“C:/xampp/htdocs”
ServerName testsite.dev
ServerAlias www.testsite.dev
标头始终设置严格的传输安全性“最大年龄=63072000;包括子域”
斯伦金安
SSLCertificateFile“crt/testsite\u dev/\u wildcard.testsite.dev.pem”
SSLCertificateKeyFile“crt/testsite\u dev/\u wildcard.testsite.dev key.pem”
我认为问题是“如何阻止Chrome重定向到HTTPS?”而不是“使用哪个TLD来代替?”…我同意Stretch。答案确实解决了我在本地网站上的问题,但没有回答我关于重定向到HTTPS的问题。如果我启动一个没有SSL的网站怎么办?我将无法访问它。我会将我的本地站点更改为.test,但在您为我的问题提供解决方案之前,我不会接受此答案。您的所有vhost都以.dev结尾,无法再让它们在您的计算机上工作。唯一的解决方案是更改tld。只需补充一点,.app域(我用于本地开发)也归谷歌所有,并且也是这样做的。我相信大多数专业开发人员在其本地环境中使用.dev tld(我的案例和成千上万的其他开发人员,我相信他们都使用它)。.dev TLD已经在我们中间使用了很多年,现在它导致人们浪费时间,直到他们发现.dev不在RFC2606的保留示例二级域名上。我不得不搬到。德维尔,谷歌不会买它。。。感谢@benedikt将RFC2606链接带到讨论。顺便说一句,这是一篇关于这个问题的好文章:谢谢你的参考。请注意,除了@benedikt answer中提到的RFC2606备忘录中的TLD之外,没有未来证明TLD。
127.0.0.1 testsite.localhost
C:\Users\John> mkcert *.testsite.dev
127.0.0.1 testsite.dev
127.0.0.1 www.testsite.dev
<VirtualHost *:443>
DocumentRoot "C:/xampp/htdocs"
ServerName testsite.dev
ServerAlias www.testsite.dev
Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains"
SSLEngine on
SSLCertificateFile "crt/testsite_dev/_wildcard.testsite.dev.pem"
SSLCertificateKeyFile "crt/testsite_dev/_wildcard.testsite.dev-key.pem"
</VirtualHost>