申请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.com
。301
表示永久重定向,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;