从http到https你可以这样做

前言#

为什么需要将 http 升级到 https ?最直接的原因就是拓展微信小程序需要。

方式有很多,我们这次要说的是 Certbot,那么开始吧!

准备环境#

我们假设是在以下环境中使用 Certbot 的:

  • Ubuntu 20.04
  • Nginx

我们使用的 Linux 发行版是 Ubuntu ,服务器上使用 Nginx。

安装#

打开官网#

image.png

选择版本#

image.png

安装 snapd#

我们来了解几个概念:

  1. Snap 是最初由 Canonical 设计和开发的软件包管理 / 软件部署工具,简而言之,Snaps 是使用库和依赖项编译的应用程序。
  2. Snapd 是一个 REST API 守护程序服务,它在 Linux 系统上运行以管理 snap 程序包(“snaps”),你通过客户端应用程序与 Snapd 交互 - snap,它与 snap store 交互以在你的系统上下载和安装 Snaps。
  3. Snaps 的优势:Snaps 安装速度更快,更易于创建,运行更安全,并且可以自动和事务性更新,因此你的应用程序始终是最新的。Snaps 可用于所有主要的 Linux 发行版,包括 Ubuntu、Linux Mint、Debian、Fedora 和 Arch。

好了,相信你对 snap 和 snapd 的关系有了一定的了解,接下来正式安装 snapd 软件包:

# 更新包管理器到最新
sudo apt update
# 安装snapd
sudo apt install -y snapd
# 确保snpd是最新的
sudo snap install core; sudo snap refresh core

最后一步前的操作#

因为我们是用过 snapd 来安装 Certbot,所以应该删除使用 apt、dnf 或 yum 等操作系统包管理器安装的 Certbot 包 。

sudo yum remove certbot。

安装#

sudo snap install --classic certbot
# 执行此命令来确保certbot命令可以运行。
sudo ln -s /snap/bin/certbot /usr/bin/certbot

升级 https#

# 获取https证书并自动编辑nginx配置
sudo certbot --nginx
# 仅生成https证书
sudo certbot certonly --nginx

测试自动续订#

sudo certbot renew --dry-run

结束语#

总体来讲,我觉得 certbot 安装起来比较简单,之前也用过一些其他的方式,比如阿里云的免费证书,宝塔面板的证书等等,综合下来最后选择了 certbot。

本作品采用《CC 协议》,转载必须注明作者和本文链接
空舟湖上~      ——Jouzeyu
lochpure
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 4

acme.sh 也不错

3年前 评论

Certbot 的确很香,以前用过,是一个月还是三个月的免费期,到期要续签,弄个定时脚本,每天看一下状态,到期就续签,不到期就不管;服务器上阿里云也有开启 https,宝塔也可以申请免费的。

3年前 评论
MArtian 3年前
lochpure

sudo certbot --nginx --nginx-server-root=/usr/local/nginx/conf

3年前 评论