有很多免费的https证书 比如:https://freessl.cn 可以按照链接去生成证书
Nginx 配置https证书也很简单,直接上配置:
server {
listen 443 ssl;
server_name xxx.com;
ssl_certificate /usr/local/https/xxx.crt; // https证书放的路径
ssl_certificate_key /usr/local/https/xxx.key;
#ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off ;
}
}
server {
listen 80;
server_name xxx.com; # 你的域名
# 强制跳转https
rewrite ^(.*) https://$server_name$1 permanent;
}
配置http证书可能会遇到的问题:
nginx ssl模块没有安装
- yum -y install openssl openssl-devel // 没安装openssl的要安装下
- 然后进入nginx源码
./configure --with-http_ssl_module
- make 编译下就OK了(不要在make install了 make install会覆盖原来安装好的)
./sbin/nginx -v // 检查是否安装好