假期结束了,复更
今天给人写信发现我的博客荒废了2个月,网站没维护,证书已过期,忘记开启评论功能。
这些都已经解决了,顺便安装了一个目录插件PostToc
,看了一下插件的代码, 学了一点前端的我能看懂了。我想换个博客主题,但是没找到理想的主题,默认主题用着还行。这个服务器明年11月应该就要到期了,之后怎样我还没想好。
看到一个有趣的博客SkyWt,竟然是校友大佬。写周记这个想法很好,我也要写周记,思考要不要新增一个周记分类,我只记得小学以及初中语文课要写周记,好多年没写周记😄。我现有分类里的随笔和周记挺像的,周记看起来更适合我,因为我大概不会高频更新,也没有要特地拿出来写的。
这2个月没做什么,schema2ddl按照我最初的思路做到现在,都要结束了,发现有结构化数据可以用,需要再做点调整,但在家懒得切换学校的vpn,还没搞。前端学了一点点,cs336还在起步阶段。二刷游戏入侵,成功把游戏入侵推荐给🦉。斥巨资购入俄罗斯方块效应和xbox手柄,提高游戏体验😊
ssl证书自动续期
我清楚的记得我设置了certbot自动续期。在ai的帮助下排查了一会儿,问题如下:ubuntu20的cerbot版本0.40太旧了,与openssl1.1.1f不兼容。
解决方法是删除旧的certbot,用snap安装certbot。
# 1. 移除旧版本
sudo apt remove certbot -y
# 2. 安装 snap 版本
sudo snap install --classic certbot
# 3. 建立命令链接(让系统能直接找到)
sudo ln -s /snap/bin/certbot /usr/bin/certbot
#apt 版 Certbot 太旧,兼容性差、依赖落后;
#snap 版是 Certbot 官方唯一推荐且长期维护的版本。
nginx -t # 测试nginx是否恢复正常
过程挺简单的,不过有一个坑是旧版本certbot申请证书的时候改了nginx配置/etc/nginx/sites-enabled/php-default
,同时增加了一些配置文件, 直接remove certbot只会删除文件,对nginx配置的修改不会撤回。如下:
- 旧 Certbot 安装时:自动修改 Nginx 配置 → 引用
options-ssl-nginx.conf
(该文件由 Certbot 生成) - 卸载旧 Certbot 时:仅删除 Certbot 程序和
options-ssl-nginx.conf
→ 但 Nginx 配置中的引用残留 - 新 Certbot 运行时:Nginx 先执行配置检测 → 发现引用的文件不存在 → 报错并阻止 Certbot 继续操作
所以需要把nginx里certbot修改的配置注释掉,然后创建 options-ssl-nginx.conf
并写入:
# This file contains important security parameters. If you modify this file
# manually, Certbot will be unable to automatically provide future security
# updates. Instead, Certbot will print and log an error message with a path to
# the up-to-date file that you will need to refer to when manually updating
# this file. Contents are based on https://ssl-config.mozilla.org
ssl_session_cache shared:le_nginx_SSL:10m;
ssl_session_timeout 1440m;
ssl_session_tickets off;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers off;
ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384";
之后重新申请证书
certbot --nginx -d strangeloop.fun -d blog.strangeloop.fun --non-interactive --agree-tos --email szh-nine@outlook.com --redirect
snap会自动配置续期,但没有reload nginx,所以要增加一个post-hook,续期成功后会自动执行 reload-nginx.sh
钩子脚本
vim /etc/letsencrypt/renewal-hooks/post/reload-nginx.sh
#!/bin/bash
systemctl reload nginx
评论开启
还好当时关闭评论的时候我记录了修改代码的位置
- post.php 27line
<?php //$this->need('comments.php'); ?>
- archive.php
<!-- <li itemprop="interactionCount"><a
href="<?php $this->permalink() ?>#comments"><?php $this->commentsNum('评论', '1 条评论', '%d 条评论'); ?></a>
</li> -->
- comments.php
注释全部
- 已有评论更改为待审核