最近看到别人的网站都是https的小绿锁了,有些羡慕,就想着跟着安装下吧。

前期调研

目前有很多支持免费ssl的,

  1. 沃通:目前很多人不推荐
  2. let's encrypt:很多人推荐
  3. 阿里云:需要填写很多东西

还有些其他的免费的,七牛以及腾讯都提供免费的资源,但是需要填写很多信息,就算了,也不深入调查了。
就是用let's encrypt的吧。

安装

使用let's encrypt很简单,官网的教程很清楚。
我是用的是debian8,代理工具是nginx,就执行这一条指令安装

apt-get install certbot -t jessie-backports

我们在生成证书前需要关闭nginx服务

service nginx stop

然后针对我们的域名生成自己的证书即可

certbot certonly --standalone --email your@email.com -d yourdomain.com

提示我们生成好了,目录是在/etc/letsencrypt/live下面

nginx

这一块配置耗费了我最多的时间。好多网上的教程都太久了,并不适合如今的软件了。
整体很简单。我们有两步操作

  1. 原站点加上443监听
  2. 80定向致443

原站点443监听

我先粘贴下我的配置

server {

    listen      443 ssl;
    server_name  blog.txiner.top txiner.top;

    root    /var/www/blog;

    #charset koi8-r;
    #access_log  /var/log/nginx/blog.log  error;


    ssl_certificate   /etc/letsencrypt/live/txiner.top/fullchain.pem;
    ssl_certificate_key  /etc/letsencrypt/live/txiner.top/privkey.pem;

到这就OK了,我就是把原来的listen 80改成了listen 443 ssl然后加上了证书路径

ssl_certificate   /etc/letsencrypt/live/txiner.top/fullchain.pem;
ssl_certificate_key  /etc/letsencrypt/live/txiner.top/privkey.pem;

这样443就配置好了,可是80呢?

80定向

很简单,直接重定向到https就好啦

server{
    listen 80;
    server_name txiner.top;

    add_header Strict-Transport-Security max-age=15768000;

    return 301 https://$server_name$request_uri;
}

问题解决了!

nginx https

已有 6 条评论
  1. 逆时针

    相知道https与http的区别,影响大吗

    逆时针 回复
    1. hundred

      https安全些。不过我不清楚对于seo有没有好处

      hundred 回复
  2. 法士特资讯

    可以考虑改变一下~

    法士特资讯 回复
    1. hundred

      嗯嗯,对的!

      hundred 回复
  3. 周松松

    很多网站都加s了

    周松松 回复
    1. hundred

      嗯呢,我也是跟着凑热闹加的

      hundred 回复
发表新评论