本文最后更新于:4 个月前

本文转自:会打篮球的程序猿

原文链接:https://www.lzhpo.com/article/102


了解开启SSL的作用

一、防止网站被劫持,常见的是手机广告劫持与流量劫持。
二、网站交流数据的加密传输。
三、搜索引擎优先收录HTTPS站点,更有利SEO优化。
四、网站源码与系统受到全站SSL协议安全。
五、网站容易被识别,增加网站信任度与形象。
六、帮助用户识别钓鱼网站。
七、保障用户隐私信息安全与网站隐私。
八、用于微信小程序与APP开发接入服务。
还有就是,就算是你nginx配置了websocket,谷歌浏览器要https才能接收通知了,微软的edg就可以。

谷歌浏览器要https才能接收通知.png

https:

谷歌浏览器要https才能接收通知-2.png

下载软件

法1:在FreeSSL开启【选择免费的】

https://freessl.cn/

在这个网站创建免费证书,之后会让你下载一个软件,那个是生成证书和秘钥的。
选择免费的!!!土豪除外!

FreeSSL.png

就是这个软件:

FreeSSL-SoftWare.png

按提示操作

ssl-1.png

ssl-2.png

ssl-3.png

ssl-4.png

ssl-5.png

服务器配置ssl

# HTTPS server
server {
    listen       443 ssl;
    server_name  www.lzhpo.com;
    ssl on;
    #root html;
    #index index.html index.htm;

    ssl_certificate      /etc/nginx/cert/web-ssl/cert.pem;
    ssl_certificate_key  /etc/nginx/cert/web-ssl/key.pem;

    # ssl_session_cache    shared:SSL:1m;
    ssl_session_timeout  5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    #ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers  on;

    location / {
        proxy_pass  http://ip地址:端口;
        proxy_redirect off;
        add_header Access-Control-Allow-Origin *;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host:$server_port;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        # 声明支持websocket
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";
    }
}

emmm…sorry,手抖没注意,写错了不是主机名,是IP地址!!!不改了,还得重新截图,麻烦,在这里说明一下就好。
ssl-6.png

服务器强制https

return    301 https://$server_name$request_uri;

ssl-7.png
配置完之后,重启nginx。

systemctl restart nginx

法2:在阿里开启

方法都和上面的一样,只是阿里的免费的有一些限制就是……

阿里的ssl.png

效果

访问你的域名,自动跳转到https。

ssl-8.png


 目录