繁体   English   中英

Laradock,在本地主机上使用 Nginx 配置 SSL

[英]Laradock, configuring SSL with Nginx on localhost

几周以来,我一直在使用 Laradock 进行本地开发,最近需要使用 HTTPS 以便在集成社交登录时让 Google 回拨给我。

我使用 WSL2 在 Windows 上开发并更改了我的主机文件:

127.0.0.1 tinker-dev.com

任何正常的http流量到tinker-dev.com路由都正确,我看到了我的应用程序,太棒了!

我做了一些阅读,发现我需要一个由权威机构签署的 SSL 证书并在mkcert上遇到困难,看起来它应该可以完成这项工作。 After following the installation I cd into the nginx/ssl folder which is mounted into Laradocks nginx ssl directory via the NGINX_SSL_PATH=./nginx/ssl/ .env var, and I then ran mkcert tinker-dev.com localhost 127.0.0.1 0.0.0.0::1生成可用于授权来自这些域的请求的证书和密钥(这生成了两个文件: tinker-dev.com+4.pemtinker-dev.com+4-key.pem

然后我修改了sites-available中的default.conf以利用这些证书:

    # For https
    listen 443 ssl;
    listen [::]:443 ssl ipv6only=on;
    ssl_certificate /etc/nginx/ssl/tinker-dev.com+4.pem;
    ssl_certificate_key /etc/nginx/ssl/tinker-dev.com+4-key.pem;

并且还修改了 laradocks startup.sh以删除在加载时自动生成 SSL 证书的块(如果未找到 default.crtis)

#if [ ! -f /etc/nginx/ssl/default.crt ]; then
#    openssl genrsa -out "/etc/nginx/ssl/default.key" 2048
#    openssl req -new -key "/etc/nginx/ssl/default.key" -out "/etc/nginx/ssl/default.csr" -subj "/CN=default/O=default/C=UK"
#    openssl x509 -req -days 365 -in "/etc/nginx/ssl/default.csr" -signkey "/etc/nginx/ssl/default.key" -#out "/etc/nginx/ssl/default.crt"
#fi

然后我启动了我的容器,发现日志中没有错误,但是到https://tinker-dev.com的任何流量导致访问日志中没有记录流量(http 流量仍然使用域记录)。 .我还意识到我刚刚遇到任何https流量的403错误。

我运行nginx -T检查加载了哪个配置,我可以看到它正在使用我的证书/密钥,如果我执行cat /etc/nginx/ssl/tinker-dev.com+4.pem它会打印证书,所以我确定它们已安装到容器中(如果我找到钥匙,结果相同)

我在这里做其他明显错误的事情吗? 我不是一个 Devopsy 的人,这些东西对我来说都是相对较新的。

我有完全相同的问题。 在 Windows 10 版本 2004 上, WSL2 变得可用,允许您将Docker 桌面与 WSL2 一起使用。

我还安装了 VMWare Workstation 14.x。 在决定 - 不情愿地 - 卸载 VMWare Workstation 之前,我有几个星期的挫败感。 这立即解决了我的问题。 但是,我尝试重新安装 VMWare,这导致问题再次出现。 我还尝试在虚拟网络编辑器中删除所有虚拟网络,但这并没有什么不同。

如果您检查您的 NGINX 容器访问日志,您将看到 NGINX 从未收到您通过 SSL 发出的连接请求——奇怪的是,HTTP 请求似乎工作正常。 此外,浏览器会显示来自 VMWare 的证书。 不幸的是,我花了很多时间寻找这个问题的解决方案,但除了卸载 VMWare Workstation 之外还没有找到解决方案。 我希望这至少能让你走上正确的轨道。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM