现象
iphone12PM港版,家里路由器为去年(2020年)3月买的华硕RT-AC1200GU(当时价格相当贵)。断流现象为:手机连接WiFi(5GHz)一段时间后,解锁开始使用时,虽然显示WiFi满格,也有IP地址,但无法上网。经检测发现内网都无法ping通(用Macbook ping手机的IP)。而在工作单位的WiFi并没有这个问题。爱人的国行iphone12PM也有这问题。猜测是家里的路由器出了问题。断流频率不稳定,最少两天一次,最多一天好几次。但是家里的macbook却又没问题。
iphone12PM港版,家里路由器为去年(2020年)3月买的华硕RT-AC1200GU(当时价格相当贵)。断流现象为:手机连接WiFi(5GHz)一段时间后,解锁开始使用时,虽然显示WiFi满格,也有IP地址,但无法上网。经检测发现内网都无法ping通(用Macbook ping手机的IP)。而在工作单位的WiFi并没有这个问题。爱人的国行iphone12PM也有这问题。猜测是家里的路由器出了问题。断流频率不稳定,最少两天一次,最多一天好几次。但是家里的macbook却又没问题。
昨天给博客搬家后,发现新的空间使用的是LiteSpeed服务器。网上查询得知LiteSpeed原生支持HTTP/3,但在浏览器页面只看到2,于是给客服发工单询问,后得到确认LiteSpeed原生支持。
于是重新在浏览器上设置了一下(设置方法网上的教程太多了,不一一列举了),我使用的是Firefox和Chrome的最新稳定版(而不是网上说的开发版),照样可以看到HTTP/3。MacOS BigSur上的Safari14通过设置也能实现。
按照固定长度分割字符串在很多地方都要用到(例如输出FASTA格式的文件)。去网上搜发现真是令人无语。最后发现python官网的方案最简单:
import textwrap
str = '123456789abcdefg'
print(*textwrap.wrap(str, width=5), sep='\n')
输出结果:
12345
6789a
bcdef
g
国内主机由于对Let’s Encrypt官网连接经常出现问题,因此推荐 DNS 法手动续期。特别是默认的 certbot renew 命令很容易由于网络连接问题导致失败,此时千万不要反复尝试,否则失败多次后直接封你一个星期没商量。惨痛教训。 😢
DNS验证是比较安全的方法,具体参考这篇文章。在此备份一下命令:
# certbot --manual --preferred-challenges dns certonly
然后有两个地方需要注意的,文章没提到:
第一:添加DNS时千万要仔细看清楚域名写的是什么,不是简单一个_acme-challenge 就完事了,因为可能有子域名。
第二:成功之后最好重启一下httpd服务。
这种方法每三个月都得手动操作一次,不能自动
snap 的官方全文在此处。其实也没什么特殊的,事实上就是它自动帮你安装了一个list-timers脚本,无需手动去设置cron。
certbot --apache
该命令会自动帮你设置 conf 文件(SSL 的 conf 以及非 SSL 的重定向)
此时只能使用 webroot 模式。建议用 --webroot 时用 -w 加上具体的目录名字,例如:
certbot certonly --webroot -w /var/www/html
这里的 /var/www/html/ 是你的域名对应的根目录。
然后去看一下 /etc/letsencrypt/renewal/yourdomain.com.conf,最后几行应该是:
[renewalparams]
account = XXXXXXXX
authenticator = webroot
server = https://acme-v02.api.letsencrypt.org/directory
key_type = rsa
webroot_path = /var/www/html,
[[webroot_map]]
这样就对了。
此时可以 certbot renew --dry-run尝试一下。确定成功才行。
注意:大部分情况下网站开启了 Cloudflare 时是允许源服务器不设置 SSL 的。但是有一种情况必须要设置:想使用 wordpress litespeed cache 爬虫插件时。