Nginx 配置https
Nginx配置HTTPS加密
准备:
1.一份ssl证书和密钥
2.修改nginx的https server部分的配置文件
3.需要配置重定向跳转
注意:
两份ssl文件需要保存到/cert目录
操作过程:
申请ssl证书密钥,上传到服务器端记录保存的目录,更改nginx.conf配置文件,参考如下代码
server {
listen 443;
server_name xxxxx;
ssl on;
ssl_certificate ../key/xxxxx.crt;
ssl_certificate_key ../key/xxxxx.key;#这个是有密码的,重启或者reload nginx的时候会提示密码
ssl_session_timeout 30m;#默认时间只有5分钟,如果5分钟就挂掉未免太短了
location /test/ {#如果要反向代理也支持,那就在这里添加,千万别在80端口下没用的!
proxy_pass http://127.0.0.1/xxxxxxx/;
proxy_redirect off;
#proxy_set_header Host $host;
#proxy_set_header X-Real-IP $remote_addr;
#proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
其中端口号443可以更改为我们想要的端口号,注意是没被占用的。
设置完后去设置一个重定向。
在之前的server里配置
server {
listen 80;
server_name xxxx;
rewrite ^(.*) https://$server_name$1 permanent;
### 使用return的效率会更高
# return 301 https://$server_name$request_uri;
}
这里server_name的地址与上面的一样访问http:80端口直接重定向到https:443端口