docker部署的nginx配置ssl证书https

申请ssl证书,已腾讯的免费证书为例

2.上传证书到linux服务器

2.1 映射ssql目录

首先确保容器命令已映射宿主机目录,不一定是ssl,也可以是其他路径。

2.2 上传文件到指定路径

以我映射的ssl路径为例,我上传到宿主机的/usr/local/nginx/ssl

2.3 nginx.conf 配置

重要的配置大概为

这个配置块的作用是将所有对ccaih.com的HTTP请求重定向到HTTPS。

  • listen 80;:指定该服务器块监听的端口是80,即HTTP的默认端口。

  • server_name ccaih.com;:指定该服务器块的域名是ccaih.com。这意味着只有来自该域名的请求才会被处理。

  • return 301 https://ccaih.com;:执行一个301重定向,将所有HTTP请求重定向到https://ccaih.com301表示永久重定向,https://ccaih.com是重定向的目标URL。

通过这个配置块,当有人尝试通过HTTP访问ccaih.com时,Nginx会自动将其重定向到使用HTTPS的ccaih.com网址。这样可以确保所有的请求都是通过安全的HTTPS协议进行传输,提供更安全的通信和保护用户隐私

	server {
		    listen 80;
		    server_name ccaih.com;
		    return 301 https://ccaih.com;
	        }的作用

这个配置块是一个Nginx服务器块,用于配置`ccaih.com`域名的HTTPS服务。

  • `listen 443 ssl;`:指定该服务器块监听的端口是443,即HTTPS的默认端口。同时,`ssl`表示启用SSL/TLS加密。

  • `server_name ccaih.com;`:指定该服务器块的域名是`ccaih.com`。这意味着只有来自该域名的请求才会被处理。

  • `charset utf-8;`:设置字符编码为UTF-8。

  • `ssl_certificate /etc/nginx/ssl/ccaih.com_bundle.pem;`:指定SSL证书文件的路径。这里的证书文件是`ccaih.com_bundle.pem`。

  • `ssl_certificate_key /etc/nginx/ssl/ccaih.com.key;`:指定SSL私钥文件的路径。这里的私钥文件是`ccaih.com.key`。

  • `ssl_session_cache shared:SSL:1m;`:配置SSL会话缓存的类型和大小,这里是共享的缓存,大小为1兆字节(MB)。

  • `ssl_session_timeout 5m;`:指定SSL会话的超时时间为5分钟。

  • `ssl_ciphers HIGH:!aNULL:!MD5;`:指定支持的加密算法。这里使用高强度的加密算法,禁用了匿名加密算法和使用MD5哈希算法的加密算法。

  • `ssl_prefer_server_ciphers on;`:表示优先使用服务器端配置的加密算法。

通过这个配置块,Nginx会监听443端口,使用SSL/TLS加密进行通信。所有来自`ccaih.com`域名的HTTPS请求将被处理,并使用指定的SSL证书和私钥进行加密。这样可以提供安全的HTTPS连接,保护网站的数据传输和用户隐私。

    server {
        # 监听的端口号
        listen 443 ssl;
        #填写您的域名或IP地址
        server_name ccaih.com;
        charset utf-8;
        ssl_certificate   /etc/nginx/ssl/ccaih.com_bundle.pem; #解压文件后对应的公钥
        ssl_certificate_key  /etc/nginx/ssl/ccaih.com.key; #解压文件后对应的私钥
        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;
        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;
相关推荐
MonkeyKing_sunyuhua30 分钟前
ubuntu22.04 docker-compose安装postgresql数据库
数据库·docker·postgresql
追风林1 小时前
mac m1 docker本地部署canal 监听mysql的binglog日志
java·docker·mac
€☞扫地僧☜€2 小时前
docker 拉取MySQL8.0镜像以及安装
运维·数据库·docker·容器
茶馆大橘2 小时前
微服务系列六:分布式事务与seata
分布式·docker·微服务·nacos·seata·springcloud
全能全知者3 小时前
docker快速安装与配置mongoDB
mongodb·docker·容器
阿尔帕兹5 小时前
构建 HTTP 服务端与 Docker 镜像:从开发到测试
网络协议·http·docker
ZHOU西口7 小时前
微服务实战系列之玩转Docker(十八)
分布式·docker·云原生·架构·数据安全·etcd·rbac
JaneJiazhao9 小时前
HTTPSOK:SSL/TLS证书自动续期工具
服务器·网络协议·ssl
JaneJiazhao9 小时前
HTTPSOK:智能SSL证书管理的新选择
网络·网络协议·ssl
ajsbxi9 小时前
苍穹外卖学习记录
java·笔记·后端·学习·nginx·spring·servlet