的域名ssl证书到期,小程序无法访问,因收入不稳定,决定暂时使用免费的证书。
通过搜索有关资料,发现申请并不难,“六步”即可实现。
一、安装 acme.sh
运行命令:curl https://get.acme.sh | sh

提示安装成功。
二、设置 API 密钥
由于的域名托管在阿里云,这里从阿里云 RAM 控制台获取以下API访问密钥:
- AccessKey ID
- AccessKey Secret

阿里云RAM控制台很好找,登录后查看工号下拉菜单可以看到“accesskey”访问方式,点击。

在弹出页面中,选择“使用RAM用户AccessKey”,创建一个RAM子账号。

获得ID和密钥后,然后在终端中运行:
export Ali_Key="AccessKey ID"
export Ali_Secret="AccessKey Secret"

这两个值不要泄露,并分配最小权限( AliyunDNSFullAccess即可)。同时建议保存。

三、申请证书
为 wx.fdone.top 申请证书,替换成自己的域名。运行命令
~/.acme.sh/acme.sh --issue \ --dns dns_ali \ -d wx.fdone.top \
提示没有账户或账户信息不完善。这里注册一个,使用自己的邮箱。运行命令:
~/.acme.sh/acme.sh --register-account -m 516477112@qq.com --server zerossl
注册成功。
接着再次运行申请证书命令:
~/.acme.sh/acme.sh --set-default-ca --server zerossl --issue --dns dns_ali -d wx.fdone.top
等待几分钟,看到如下提示:
说明申请成功。
证书目录和文件:
/root/.acme.sh/fdone.top/fullchain.cer
私钥目录和文件:
/root/.acme.sh/fdone.top/fdone.top.key
四、部署证书到 Nginx
1. 创建证书存放目录
mkdir -p /etc/nginx/ssl/wx.fdone.top

2. 安装证书文件
运行以下命令:
~/.acme.sh/acme.sh --installcert -d wx.fdone.top \ --keypath /etc/nginx/ssl/wx.fdone.top/wx.fdone.top.key \ --fullchainpath /etc/nginx/ssl/wx.fdone.top/fullchain.pem

可以看到安装成功。
五、配置 Nginx 支持 HTTPS
配置站点配置文件,新建:
vim /etc/nginx/conf.d/wx.fdone.top.conf
按照如下格式更改、编辑。
server { listen 443 ssl; server_name wx.fdone.top; ssl_certificate /etc/nginx/ssl/wx.fdone.top/fullchain.pem; ssl_certificate_key /etc/nginx/ssl/wx.fdone.top/wx.fdone.top.key; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5; location / { root /usr/share/nginx/html; index index.html index.htm; try_files $uri $uri/ =404; }}# 强制 HTTP 跳转 HTTPS(这一步可选)server { listen 80; server_name wx.fdone.top; return 301 https://$host$request_uri;}
保存退出后,运行如下命令检查配置是否正确:
nginx -t
看到ok和success,证明成功。另外,要查看nginx.conf文件包含"include"了刚才配置的文件。
include /etc/nginx/conf.d/wx.fdone.top.conf
接着重载 Nginx,运行:
systemctl reload nginx
可以看到完全正常访问,地址栏无安全提示。也可以通过文末链接测试。

小程序访问恢复正常。
六、设置自动续签(已默认启用)
“acme.sh”自动添加了定时任务,每天自动检查即将过期的证书并续签。查看当前用户的定时任务确认:
crontab -l
即:
0 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
每次续签成功后,"acme.sh"会自动重载 Nginx。
推荐本站淘宝优惠价购买喜欢的宝贝:
本文链接:https://www.hqyman.cn/post/11735.html 非本站原创文章欢迎转载,原创文章需保留本站地址!
休息一下~~