美兰十三的想疗院


一个不务正业的前端狗,爱纹身、玩乐队、哥金党、专门写Bug~


给Ghost@2.x 上SSL

之前写过一篇 ghost@0.7 上 SSL的文章
传送门:/0yuan-rang-ni-de-wang-zhan-zhi-chi-https/

这次给 @2.x 上SSL 方式其实90% 是一样的。。。。

但是呢。。。唯独有点区别的地方在于 ghost install 或者 ghost setup 的时候提示的 SSL配置一定要选择 no

install 或者 setup 的时候的 SSL 配置 是自动关联到 Let's Encrypt 的。。。虽然这是个免费的SSL颁发,但是他每次颁发的SSL证书只有3个月有效期,到期 要手动续签,很麻烦!而且申请也是很麻烦!!!

所以我们还是沿用上一篇文章中的办法,通过 阿里云 或者 腾讯云 去申请一年免费的ssl证书。
之后再按照 上一篇文章中的内容去配置就行啦~ 配置其实还是很简单的。。。

不过有一点注意的是 如果 是通过 ghost installghost setup 命令创建的 Nginx 配置文件的话,这个 Nginx 配置文件并不在你的 ngix 的 site-enalbed 目录下,而是在你的 Ghost博客目录下的 system -> files 里面

但是 配置完成之后 要重新改动一下 在Ghost博客根目录下的 config.production.json 文件

ghost stop <Name> 关闭你的 Ghost博客
然后修改 config.production.json 文件中的 url 的值,把 http 改成 https

修改完之后,在Ghost博客所在的根目录下 通过 ghost start 命令 重新启动 ghost博客

完美!

好了 现在我们的 SSL 配置成功了,接下来,我们做一步额外的工作,把 原来的 http 重定向到 现在的 https

现在我们修改下 Nginx 的 配置文件

server {
    listen 443;
    listen [::]:443;

    ssl on;
    ssl_certificate [pem 文件路径];
    ssl_certificate_key [key 文件路径];

    server_name [你的域名];
    root /var/www/<博客目录>/system/nginx-root;

    location / {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $http_host;
        proxy_pass http://127.0.0.1:[port];
    }

    location ~ /.well-know {
        allow all;
    }

    client_max_body_size 50m;
}
server {
    listen 80;
    listen [::]:80;

    server_name [你的域名];

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

好了,我们 重启下Nginx 看下效果吧!

建议打赏金额1-10元

支付宝打赏

微信打赏

最近的文章

IOS上微信内H5图片长按发送问题

最近做一个项目遇到个很妖孽的问题。。。 在微信内打开一个H5,长按H5中的图片保存和发送给朋友 保存和发送给朋友这两个功能是微信本来就有的,不需要额外的开发, 但是偏偏遇到个很奇怪的事情,在An…

IOS, wechat, H5, 微信, 项目总结 继续阅读
更早的文章

一个很棒的GIT教学

learnGitBranching 对于熟悉git的人其实使用git已经觉得很简单了,但是你真的明白git里面一些不同命令的作用么? 没用过git的开发者如何快速上手git??? OK 不得…

开源好项目, open source 继续阅读
comments powered by Disqus
沪ICP备15043964号-3