今天迁移了一个网站到新服务器,用 certbot 安装证书后访问报错 ERR_SSL_PROTOCOL_ERROR

看了下 nginx 的错误日志:

2024/04/16 19:17:14 [crit] 1286606#1286606: *8 SSL_do_handshake() failed (SSL: error:0A0000BA:SSL routines::bad cipher) while SSL handshaking, client: xxx.xxx.xxx.xxx, server: 0.0.0.0:443

奇怪的是,其他网站都是正常的。

检查配置,发现迁移网站的 nginx 配置跟其他网站的区别有一个:

ssl_prefer_server_ciphers off;

off 改为 on 后 service nginx reload,问题解决。

需要注意的是,由于 ssl 是 certbot 自动配置的,所以这个配置项在 /etc/letsencrypt/options-ssl-nginx.conf 这个文件里。

PS: 如果不在这个文件夹里,可以参见你的站点配置文件 include 了哪个配置文件。

- 阅读剩余部分 -

接上文。

上文中提到 composer install 遇到的报错其实有两个,第一个是 Redis 扩展的问题,第二个就是 php 版本问题。

我安装的依赖有个依赖还不支持 php 8.3,这时候其实只要升级这个依赖的版本问题应该就可以解决了。

但我还是想切换回 php8.1,因为我的 fpm 跑的还是 8.1,cli 里跑 8.3 其实并不 make sense。

- 阅读剩余部分 -

今天用 composer require 一个库,报错,提示缺少 redis 扩展。

2024-04-16T10:35:05.png

我的 php 是用 homebrew 安装的,之前用的是 8.1,估计前不久升级了一下,现在看是 8.3 了。

于是尝试使用 brew install php@8.3-redis,发现没有这个包。

想了一下用 pecl 安装。

pecl install redis

一路使用默认选项,竟然很顺利地安装成功了。

2024-04-16T10:36:50.png

- 阅读剩余部分 -

今天在初始化一个项目的时候执行 npm install 遇到报错:

npm ERR! RequestError: Hostname/IP does not match certificate's altnames: Host: npm.taobao.org. is not in the cert's altnames: DNS:*.tbcdn.cn, DNS:*.taobao.com, DNS:*.alicdn.com, DNS:*.cmos.greencompute.org, DNS:cmos.greencompute.org, DNS:m.intl.taobao.com...

后面太长就省略了。

看起来是之前 taobao 镜像迁移,证书过期引起的问题。

npm config list 看了一下配置,发现了很多 npm.taobao.org 域名。看来要彻底清除一下了。

2024-04-16T08:42:46.png

- 阅读剩余部分 -

众所周知,ChatGPT OpenAPI 在国内是没办法使用的。

如果想用,就得解决两大难题:

  • 一是 IP 问题,也就是说你的服务器不能在国内;
  • 二是支付问题,微信支付宝是不支持的,国内办的银行卡也是不行的。

我之前也捣鼓过,搞到最后没脾气了,后来发现了一个不错的第三方代理 OpenKey.Cloud,帮你解决了这两大难题,你只需要专注于你的应用开发就可以了。

OpenKey.Cloud可以在国内的服务器上使用,可以使用微信支付宝支付,就跟使用国内的 API 服务一样,非常不错,而且 API 只是转发,改个域名就可以了。非常方便。

使用我的邀请码(官方叫“赠送码”)可以获得赠送额度。

比如,充值额度 $1000美金,同时获得赠送额度 = $1,000 x 5% = 50刀。

- 阅读剩余部分 -

前段时间客户跟我说需要几个企业邮箱。

我本来没当回事,打算准备注册个阿里企业邮箱的,没想到阿里企业邮箱现在收费了。记得之前在阿里注册的域名都是免费送企业邮箱的,没想到现在也不免费了。

虽说钱不多,5个邮箱一年也就大几百块,但秉持着能不花钱就不花钱要花就花在最好的产品上的原则,我稍微研究了一下市面上的企业邮箱,写个文章总结一下。

- 阅读剩余部分 -

2024-04-15T09:18:04.png

Mycorrhiza Wiki 是由 Bouncepaw 及其他开源贡献者共同开发的一款开源平台,旨在为数字领域的创造力和协作提供支持。

与传统的 Wiki 引擎不同,Mycorrhiza 基于 git 实现文档的版本管理,而不需要复杂的数据库,而是将所有数据存储为简单的文件。这种独特的方法简化了安装流程,并通过直接文件编辑等多种方式方便了内容修改。

- 阅读剩余部分 -