我为localhost CN创建了一个自签名SSL证书.Firefox正如预期的那样在最初抱怨之后接受此证书.然而,Chrome和IE拒绝接受它,即使在将证书添加到Trusted Roots下的系统证书存储区之后也是如此.即使我在Chrome的HTTPS弹出窗口中单击"查看证书信息"时列出的证书已正确安装,但仍然坚持认证证书不可信.
我该怎么办才能让Chrome接受证书并停止抱怨?
我们最近使用新证书更新了我们的ZNC服务器(不要认为这很重要),以包含主题备用名称(SAN)DNS字段.它现在以隐身方式工作,但我现有的会话显示错误"此页面不安全(已损坏的HTTPS)".以下详细信息:
带有证书错误的活动内容
您最近允许在此站点上运行加载了证书错误(例如脚本或iframe)的内容.
我被搜查但没有找到任何与此有关的更多细节.听起来好像它会自行过期,因为它表示"最近",但我更关心的是如何快速解决这个问题并希望无需用户做任何事情.
我已禁用在网络请求中显示的扩展程序,现在只剩下几个请求,所有这些都是HTTPS.我还尝试了ctrl + shift + r重新加载w/bypass缓存,以及重新加载时选择的dev工具'disable cache'.
我让它在我的生产服务器上工作,但是在localhost canMakePayment()return上null。
我已经通过最小的Stripe代码跟踪了这一点,但是遇到了一个函数ko,该函数只是将调用发送CAN_MAKE_PAYMENT到某个消息队列,此后执行将变为异步,并且e.available === false在没有进一步信息的情况下解决请求之前,我无法进行进一步跟踪。
我已验证该API确实可在localhost上的Chrome浏览器中使用(window.PaymentRequest可用)。我也在本地运行https(尽管没有绿色复选标记)。
如何跟踪导致Stripe报告PaymentRequest不可用的原因?如果我没有绿色的SSL支票,Chrome会拒绝PaymentRequest呼叫吗?如果是这样,我将如何测试?Chrome文档只是说如果PaymentRequest可用,那么您可以调用API。
如果我知道在哪里处理消息队列,则可以进一步调试。
我正在使用Laravel Homestead并且工作正常.现在我想在我的一个站点上实现HTTPS.
我发现要实现这一点,你只需要添加ssl: true到Homestead.yaml然后运行vagrant reload --provision.
当我运行上面的命令时,我可以看到它工作,显示:
==> homestead-7: Running provisioner: shell...
homestead-7: Running: script: Creating Certificate: laravel-cashier.local
==> homestead-7: Running provisioner: shell...
homestead-7: Running: script: Creating Site: laravel-cashier.local
Run Code Online (Sandbox Code Playgroud)
在/etc/nginx/ssl,我可以看到这3个文件被创建:
-rw-r--r-- 1 root root 683 Jul 19 16:26 laravel-cashier.local.cnf
-rw-r--r-- 1 root root 1269 Jul 19 16:26 laravel-cashier.local.crt
-rw-r--r-- 1 root root 1704 Jul 19 16:26 laravel-cashier.local.key
Run Code Online (Sandbox Code Playgroud)
但接下来呢?
当我尝试使用https运行网站时:
我还需要做其他任何步骤吗?
注意:我使用的是最新的Homestead版本2.1.0.
我已经看过很多帖子,但我认为它们太旧了,并没有提供实现结果的确切步骤:
https://laracasts.com/discuss/channels/tips/tip-how-to-enable-ssl-in-homestead-20
https://laracasts.com/discuss/channels/servers/homestead-ssl
我遵循了以下有关创建SSL证书的详细信息,因此我可以使用https通过Laravel的Homestead运行本地测试站点。
一切都很好,但是当通过https://查看测试域时,我在Chrome的地址栏上看到一个红叉。它说证书是不信任的,因为它是自签名的,并且未经第三方验证。
有办法解决这个问题吗?这样我就可以让我的HTTPS本地域受到Chrome的信任,并且可以像在网上一样工作吗?