无法将 Browsersync 与 DDEV nginx 服务器连接,因为 SSL 错误

hex*_*oss 4 nginx browser-sync ddev

我正在 Bedrock WordPress 网站上运行 DDEV nginx 服务器并尝试加载 Browsersync 的代码片段。

gulpfile.js browserSync 任务:

browserSync.init({
proxy: {
 target: "https://web.ddev.site"
}, 
https: {
 key: "/Users/user/Library/Application Support/mkcert/rootCA-key.pem",
 cert: "/Users/user/Library/Application Support/mkcert/rootCA.pem"
}, open:false}); 
Run Code Online (Sandbox Code Playgroud)

浏览器不加载代码片段并打印以下错误:

(index):505 GET https://web.ddev.site:3000/browser-sync/browser-sync-client.js?v=2.26.7 net::ERR_SSL_KEY_USAGE_INCOMPATIBLE

我怎样才能让这两件事一起工作?在 DDEV 之前,我使用的是 MAMP,但 DDEV 的性能要好得多,我想切换到这个应用程序。感谢帮助。

hex*_*oss 8

问题是 ssl 证书文件错误。需要使用docker容器证书。不再需要代理选项。

设置 ddev 容器后,您需要将 docker 证书复制到某个位置:

docker cp ddev-router:/etc/nginx/certs ~/tmp

之后只需更新正确的证书文件的路径。我的 gulpfile 任务现在如下所示:

browserSync.init({https: {
 key: "/Users/username/tmp/master.key",
 cert: "/Users/username/tmp/master.crt"
}, open:false});
Run Code Online (Sandbox Code Playgroud)

感谢@rfay 提供解决方案!