mkcert生成本地SSL证书+Nginx搭建HTTPS,并反向代理到web页面

您所在的位置:网站首页 localhost设置地址 mkcert生成本地SSL证书+Nginx搭建HTTPS,并反向代理到web页面

mkcert生成本地SSL证书+Nginx搭建HTTPS,并反向代理到web页面

2023-08-27 22:09| 来源: 网络整理| 查看: 265

以下操作皆在mac环境下,win朋友请自行调整命令。

生成证书 安装mkcert brew install mkcert brew install nss # if you use Firefox 生成根证书 mkcert -install

通过“钥匙串访问.app”搜索mkcert,并信任证书。

生成个人证书 mkcert my.com localhost 127.0.0.1

证书文件在执行目录中,成功创建之后,会在该目录下生成如下两个文件:

证书 XXX.pem 私钥 XXX-key.pem

Ngixn Server 配置 安装nginx brew install nginx 修改nginx配置文件 open /usr/local/etc/nginx/nginx.conf

添加在http属性下的server,以localhost为例,注意修改证书和私钥的地址。如果需要添加my.com的,则在配置文件中并行添加其他的server配置。

server { listen 80; listen 443 ssl; server_name localhost; # 设置 SSL 证书和私钥地址 ssl_certificate /Users/mako/mako-SSL.pem; ssl_certificate_key /Users/mako/mako-SSL-key.pem; # SSL 会话配置 ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; # SSL 协议、加密配置 ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { root html; index index.html index.htm; }

启动或重启nginx服务,选一个即可

启动nginx

nginx

重启nginx

sudo nginx -s reload

访问https://localhost验证是否生效。

(配置其他server后可以验证其他页面是否成功)

反向代理到指定自定义页面 开启服务

我通过本地服务器开启了一个127.0.0.1:8080的web页面

配置host(我使用了SwitchHosts) 127.0.0.1 my.com 配置nginx

配置server的配置,添my.com的https服务

server { listen 443 ssl; server_name my.com; # 设置 SSL 证书和私钥地址 ssl_certificate /Users/mako/mako-SSL.pem; ssl_certificate_key /Users/mako/mako-SSL-key.pem; # SSL 会话配置 ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; # SSL 协议、加密配置 ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { root html; index index.html index.htm; proxy_pass 'http://127.0.0.1:8080'; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } 重启nginx sudo nginx -s reload 访问web

访问https://my.com验证是否成功,浏览器提示应该显示“连接是安全的”,对于chrome来说,会在链接输入栏左侧有个小锁。



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3