几天前,Chrome开始将我在Wampserver中的所有vHost重定向到https。一切都工作正常,直到几天前,然后有一天我登录在我的网站上工作,Chrome说无法访问该网站,即使我过去使用过相同的URL。 Wamp正在运行以及Apache和MySQL,并且这些服务都没有在错误日志中出现任何错误。
我已经尝试使用chrome://net-internals/#hsts
删除域名(我对我的本地网站使用假的.dev扩展名)但是没有做任何事情。我还尝试安装SSL以查看Chrome是否会将其检测为安全连接......没有。我甚至尝试完全重新安装Wamp(即使vHosts在其他浏览器中工作正常)并且没有任何改变。
Chrome中唯一有效的方法是通过http://localhost/site
访问这些网站。我的所有Apache vHost都会重定向到HTTPS。我用Google搜索并用谷歌搜索,找不到任何可以解决问题的方法。
答案 0 :(得分:30)
Chrome v63会将.dev域强制为HTTPS。互联网工程任务组RFC2606指定了应该用于本地开发的顶级域名,而.dev不在该列表中。
Google拥有.dev顶级域名,并通过预加载的HSTS自动将所有.dev域名重定向到网站的HTTPs版本。
如果.dev是官方通用顶级域名(gTLD),我们可以更好地将本地开发后缀从.dev更改为其他内容,即使有其他解决方案(例如https带有自签名证书) )。因此,您应该使用 .test , .example , .invalid 或 .localhost 作为本地开发TLD。
答案 1 :(得分:4)
我无法改善@benedikt的答案,因为它是正确的。有很好的临时修复:
我的解决方法是将所有“.dev”开发顶级域名更新为“.d3v” 仍然足够短,可以快速输入,描述性,可能面向未来。
答案 2 :(得分:1)
我找到了一个快速的解决方案,可以满足我的需求并可以帮助其他人。
我在开发时使用Browser Sync,我只是将代理参数设置为" testsite.dev"它将在Chrome中正确显示。
这是我正在使用的命令:
browser-sync start --proxy "testsite.dev" --port "3000" --files "./**/*.*"
答案 3 :(得分:0)
我也使用.dev扩展名,并且将来会更改为其他某些域但是对于我现有的.dev网站,当隐私错误显示时,点击屏幕上的任意位置并输入'badidea',chrome会重定向你到网站。有用!
答案 4 :(得分:0)
解决方案1-选择一个保留的且可用于将来的gLTD,例如.localhost或.test
编辑您的主机文件(对于Windows,为C:\ Windows \ System32 \ Drivers \ etc \ hosts)
127.0.0.1 testsite.localhost
解决方案2-为.dev安装自签名证书
P.S。确保先安装mkcert
C:\Users\John> mkcert *.testsite.dev
这将创建一个通配符证书,该证书适用于所有.testsite.dev网站
将这些密钥从C:\ Users \ John复制到C:\ xampp \ apache \ crt \ testsite_dev(如果不存在,请创建crt文件夹)
在C:\ Windows \ System32 \ Drivers \ etc \ hosts文件中添加条目
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>
重新启动Apache
(附加)步骤-使您的操作系统和浏览器信任自签名证书,否则它将不起作用