SQUARE - a full-stack engineer
SQUARE - a full-stack engineer
Others

10 分钟将你的网站升级到 HTTPS

随着 HTTPS 的普及,现在不用 HTTPS 都不好意思把网站发给别人了,所以索性也把个人博客升级到 HTTPS 。

HTTPS 带来的好处不用多说了,直入正题。

环境配置

先说一下服务器环境配置,根据运行环境不同,可能会有少许配置差异。

  1. OS: Ubuntu 14.04.2
  2. Web Server: Nginx 1.4.6
  3. CGI: PHP-FPM

证书

现在提供免费证书的公益组织非常多了,Let’s encrypt 就是其中一家。为了减少配置工作,推荐使用他们的 Shell 工具 certbot 在服务端自动配置。官网上列有不同 OS 的下载与安装方法。

官方推荐方式:
certbot –nginx

我们这里用的是指定参数安装
certbot certonly -w /var/www/blog -d doruby.com

-w 是你站点存放的位置,目的是在对应的目录下,创建 well-known/acme-challenge/ 这样的目录,并放入认证文件,它会让官网根据这个文件是否可访问,来判断这个域名是不是你所拥有的。所以要保证这个目录是可以被外部所访问到的。
所以在执行这个命令前,先确认你的 nginx 配置了它可被访问:

server{
....
location ~ /.well-known {
allow all;
}
}

-d 是对应的域名,多个域名可以在后面继续用 -d 添加

如果命令顺利执行完成,会收到 Congratulations 的提示,并提示证书所在位置,比如 /etc/letsencrypt/live/doruby.com/fullchain.pem 记录下来。

在 Nginx 配置文件中,添加 SSL 相关配置

server {
listen 443; # 原先应该是 80

......

ssl on
ssl_certificate /etc/letsencrypt/live/doruby.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/doruby.com/privkey.pem;

......

}

如果相让原先访问 Http 的入口自动跳转到 Https ,可以再增加一些配置

server {
listen 80;
server_name doruby.com;
return 301 https://$host$request_uri;
}


OK. 重启 Nginx ,顺利的话你现在应该可以看到你的网站跳到 Https 了,并且前面会有绿色小锁。


这里有几点需要注意

  • 如果创建证书遇到问题,第一时间检查提示的日志文件
  • 如果配置完成后,网站打不开,establish 不成功,先检查一下服务器有没有打开 443 端口的访问权限
八月 3, 2017by square
FacebookTwitterPinterestGoogle +Stumbleupon

近期文章

  • 从头梳理之–内存与内存管理
  • 剖析几种流行的 iOS 设计模式–MVC;MVVM;VIPER
  • 重头梳理网络协议栈
  • 10 分钟将你的网站升级到 HTTPS
  • URLCache 设置不当影起的 App 故障

近期评论

    文章归档

    • 2018年四月
    • 2018年三月
    • 2017年十二月
    • 2017年八月
    • 2017年三月
    • 2017年二月
    • 2016年四月
    • 2015年十月
    • 2015年八月
    • 2014年十月
    • 2014年八月
    • 2014年五月
    • 2014年四月
    • 2014年二月
    • 2013年十一月
    • 2013年十月
    • 2013年八月
    • 2013年五月
    • 2013年四月
    • 2013年二月
    • 2013年一月
    • 1999年二月

    分类目录

    • Debug
    • Distribution
    • Feature
    • Foundation
    • Hello world
    • Interaction
    • iOS
    • Others
    • Performance
    • Third Library
    • Worflow
    • Xcode

    "If today was the last day of my life would I want to do what I am about to do today? And whenever the answer has been "No" for too many days in a row I know I need to change something"

    © 2016 copyright SQUARE // All rights reserved //
    沪ICP备15033584号-2