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;
相关推荐
chengpei14711 分钟前
docker配置远程连接,dockerfile-maven-plugin插件打包到远程
spring boot·docker·maven
destinyol2 小时前
wsl-docker环境下启动ES报错vm.max_map_count [65530] is too low
elasticsearch·docker·容器
Z天蝎座2 小时前
从0到1构建工具站 - day6 (在线编程工具-docker)
运维·docker·容器
遇见火星4 小时前
nginx或tengine服务器,配置HTTPS下使用WebSocket的线上环境实践!
服务器·websocket·nginx·https·tengine
gs801405 小时前
PEM格式证书 = 域名证书.crt + 根证书(root_bundle).crt 含义解析
服务器·https·ssl
花木凋零成兰6 小时前
驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接
java·安全·ssl
kfhj7 小时前
DevOps与Docker的关系
运维·docker·容器·devops
ldq_sd8 小时前
Django 在同一域名下使用 NGINX 服务器运行 Django 和 WordPress
运维·服务器·nginx
丘陵哈哈17 小时前
Docker学习笔记
笔记·学习·docker
程序猿John19 小时前
nginx实现负载均衡与例子详解
运维·nginx·负载均衡