- nginx版本1.14.0,openssl版本1.0.2
nginx -v
openssl version
- 拿到的证书格式分别为
.crt
(公钥)和.key
(私钥)文件- 该
.crt
文件格式,为多段begin-end-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----
- 该
.key
文件格式-----BEGIN RSA PRIVATE KEY----- ... -----END RSA PRIVATE KEY-----
- 该
- nginx配置
- server配置
server { ... listen 443 ssl; #nginx 1.15.0后舍弃 'ssl on;' 用法 #keepalive_timeout 75; #默认TCP连接保持的时间75s ssl_certificate /data/crt/api/Nginx/api.crt; #引入公钥证书 ssl_certificate_key /data/crt/api/Nginx/api.key; #引入私钥key ssl_session_cache shared:SSL:10m; #设置session缓存的类型和大小 ssl_session_timeout 10m; #session缓存的ssl参数过期时间, 默认5m ssl_ciphers AES128-SHA:AES256-SHA:RC4-SHA:DES-CBC3-SHA:RC4-MD5; #选择加密套件 ssl_prefer_server_ciphers on; #优先使用服务端加密套件 #ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #加密协议,默认即为该配置 add_header Strict-Transport-Security "max-age=31536000; includeSubdomains"; #启用HSTS:HTTP严格传输安全 add_header Set-Cookie "Secure"; #设置cookie加密传输 #add_header X-Frame-Options "SAMEORIGIN"; #只允许页面可在相同域名页面frame、iframe使用 #fastcgi_param HTTPS $https if_not_empty; #php用 fastcgi的参数 }
- http重定向至https
server { listen 80; server_name xxx.com; return 301 https://$server_name$request_uri; }
- server配置
网友评论