下载证书
- 阿里云的单域名免费证书需要自己在购买菜单点点点才能点出来,优秀的产品经理

- 然后在控制台 ssl 模块进行证书申请即可
- 开放安全组 443 端口
nginx 配置
- 需要编译带上
--with-http_ssl_module - 安装
opensslapt-get install openssl libssl-dev
./configure --prefix=/home/soft/nginx_demo--with-http_ssl_module
server 字段
-
指令
ssl| Syntax: |**ssl**on|off;| | :—- | —- | | Default: | ssl off; | | Context: |http,server| | Desc: | 是否 开启 ssl |
ssl_certificate| Syntax: |**ssl_certificate**file;| | :—- | —- | | Default: | — | | Context: |http,server| | Desc: | 设置证书文件路径 |
ssl_certificate_key| Syntax: |**ssl_certificate_key**file;| | :—- | —- | | Default: | — | | Context: |http,server| | Desc: | 设置密钥文件路径 |
优化
- keepalive 优化
- 设置 ssl session 缓存
ssl_session_cache| Syntax: |**ssl_session_cache**off|none| [builtin[:size]] [shared:name:size];| | :—- | —- | | Default: | ssl_session_cache none; | | Context: |http,server| | Desc: | 设置关于存储会话参数的缓存的类型和大小 | | Params: |
-off严格禁止使用会话缓存:nginx显式地告诉客户端会话可能不会被重用
-none不允许使用会话缓存:nginx告诉客户端可以重用会话,但实际上并不在缓存中存储会话参数。
-builtin在OpenSSL中构建的缓存;仅供一个 worker process 使用。缓存大小在会话中指定。如果没有给出大小,则等于20480个会话。使用内置缓存会导致内存碎片。
-shared设置在所有 worker process 之间的共享缓存。缓存大小以字节为单位指定;1兆字节可以存储大约4000个会话。每个共享缓存应该有一个任意的名称。具有相同名称的缓存可以在多个虚拟 server 中使用。
|
ssl_session_timeout
| Syntax: | **ssl_session_timeout**time; |
|---|---|
| Default: | ssl_session_timeout 5m; |
| Context: | http, server |
| Desc: | 指定客户端重用会话参数的时间 |
附录
配置文件如下 ```json server {
listen 80;server_name www.nekosighed.com;location / {rewrite ^(.*)$ https://$host$1 permanent; #将所有http请求通过rewrite重定向到https。}
} server {
listen 443 ssl;server_name www.nekosighed.com;# 开启 https# ssl on;ssl_certificate /home/soft/nginx_demo/cert/www.nekosighed.com.pem;ssl_certificate_key /home/soft/nginx_demo/cert/www.nekosighed.com.key;# session cachessl_session_cache shared:ssl_session_key:10m;ssl_session_timeout 10m;# 阿里云配置中额外添加的#ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #使用此加密套件。#ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #使用该协议进行配置。#ssl_prefer_server_ciphers on;location / {root static;index index.html index.htm;}
}
```
