文章目录
- 01 准备工作
- 1.1 HTTPS介绍
- 1.2 准备工作
 
- 02 编写nginx.conf
- 03 使用docker启动nginx
01 准备工作
1.1 HTTPS介绍
HTTPS(Hypertext Transfer Protocol Secure)是一种通过加密通信保护网站数据传输的协议。它是 HTTP 协议的安全版本,通过使用 SSL(Secure Sockets Layer)或 TLS(Transport Layer Security)协议对数据进行加密和认证。在 HTTPS 下,传输的数据在客户端和服务器之间是加密的,确保信息不被窃听、篡改或伪装。这为网站提供了以下重要好处:
1.2 准备工作
需要一台Linux服务器、一个域名,安装docker。
 并且从阿里云等服务商处获取了SSL 证书。
 在阿里云的域名管理界面,点击“开启SSL证书”。
 
 选择“免费证书”即可。
 
 然后点击“创建证书” -> “证书申请”
 填写响应信息,然后提交审核。
 通过后点击“下载”,选择Nginx。
 
 下载好后解压,包含一个.key文件和一个.pem文件。将它们上传到服务器。
02 编写nginx.conf
...
http {
	...
    server {
    	# http2可以提升响应速度 是可选的
        listen 443 ssl http2;				# 这里要加上ssl 443是https的默认端口 80是http的默认端口
        server_name www.xxx.top;			# 证书对应的域名
        location / {
            ...
        }
        ssl_certificate /etc/ssl/certificates/www/www.xxx.top.pem;		# 证书存放路径(docker容器内的路径)
        ssl_certificate_key /etc/ssl/certificates/www/www.xxx.top.key;	# 私钥存放路径(docker容器内的路径)
        # 以下配置可以提升响应速度 是可选的
        ssl_prefer_server_ciphers on;
        ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
        ssl_stapling on;
        ssl_stapling_verify on;
        ssl_trusted_certificate /etc/ssl/certificates/www/www.xuxilin.top.pem;
        ssl_buffer_size 4k;
    }
}
概括地说,在监听时新增了ssl,同时增加了ssl_certificate和ssl_certificate_key配置,即可开启HTTPS了。
03 使用docker启动nginx
在服务器的/root目录下新建ssl目录,然后将证书和私钥文件放在该目录下。
 编写docker-compose.yml文件(需要安装docker-compose)
version: '3.3'
services:
    nginx:
        volumes:
            - '/root/nginx.conf:/etc/nginx/nginx.conf'	# 配置文件映射
            - '/root/ssl:/etc/ssl/certificates'			# 证书目录映射
            - '/root/html:/usr/share/nginx/html'		# 页面目录映射(可选)
        network_mode: host								# 使用宿主机的网络
        image: 'nginx:stable-alpine-slim'
启动docker容器
# 需要先cd到docker-compose.yml所在的目录 再执行命令
docker-compose up -d
然后就可以输入带https域名进行访问了。
















![flink 实时数仓构建与开发[记录一些坑]](https://img-blog.csdnimg.cn/844058373c3b45e29655afac40604d3a.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBAY2c2,size_20,color_FFFFFF,t_70,g_se,x_16)
