让 Ktor 支持使用 PEM 格式的 HTTPS 证书
简介 Ktor 官方提供了 SSL 的支持,但是配置所使用的 HTTPS 密钥形式是 Java KeyStore,这对于 PEM 格式的证书不太友好,用户配置复杂。 为此,我在应用中编写了一种 PEM 转 KeyStore 的方法,来帮助用户直接加载 PEM 形式的 HTTPS 证书。 本文会写的比较简单一些,如果想详细了解例如证书格式之类的内容,…
Blog 地区代理已关闭

Blog 中国地区代理站已经关闭,现在访问原中国地区代理站地址(blog.lamgc.moe)将直接访问全球站。

关闭代理站的原因主要是代理站没有满足加快中国地区用户的访问速度,继续维持代理站运行已经没有必要了。

原全球站域名将失效,如有其他使用该链接的友站请注意更换(如由本人主动申请友链的,将会尽快主动联系)。

1005 日 , 2021 11:06
刷面具后解决 SafetyNet 不通过的一种方法
解锁 BootLoader,刷完面具后可能会出现 SafetyNet 两项均未通过的情况,Lam 我通过该方法成功解决,在此分享给各位。(注意,不保证一定可以,可以尝试一下) 下载模块 这个方法需要两个模块 MagiskHide Props Config(可在面具模块仓库直接下载,或者前往 Github)Universal SafetyNet Fi…
Cloudflare TLS 加密模式与 Http 重定向的冲突

如果通过 NginxConfig 创建了网站配置,而且网站使用了 Cloudflare 作为 CDN 的话,请检查以下几点:

  • NginxConfig 生成的配置里是否使用了“强制 HTTPS”(即 Http 重定向至 Https)
    • 如果是:
      • Cloudflare 是否:TLS/SSL 加密模式为“灵活”(仅加密用户到 Cloudflare 之间的流量,Cloudflare 与网站之间走 Http

如果在 Cloudflare 的 TLS 加密模式选择了“灵活”,且 Nginx 对网站的配置包括了对 Http 流量的 301 重定向,那么将会出现无限重定向问题(Cloudflare 通过 Http 访问网站,被网站重定向至 Https,但此时访问被 Cloudflare 代理,Cloudflare 依然使用 Http 访问,造成无限重定向问题)。

解决方法为:TLS 加密模式设为“完全”或“完全(严格)”,让 Cloudflare 使用 Https 访问网站。

706 日 , 2021 8:50
thumbnail
Nginx 在尝试反向代理启用了 SNI 的 Https 网站时发生 SSL 握手失败的解决方法
为了优化博客在国内的访问速度,又找了一台机子来进行反代,在尝试直接反代到博客源站时发生 Http 502 错误,根据日志信息,判断为 Nginx 未设置反代 SNI 配置,故在 location 块中添加如下几行: # reverse proxy location / { // 对反代连接启用 SNI 支持 proxy_ssl_server_nam…
GPG 物理密钥从安装到日常使用
GnuPG 是非对称加密专利软件 PGP 的开源版本,在日常使用 GPG 时,密钥通常保存在所有者的电脑上,这对于希望密钥随身携带的用户来说,支持 OpenPGP 的物理密钥就帮上大忙了。 OpenPGP 物理密钥(官方叫做“OpenPGP 智能卡 / OpenPGP Card”),由于无法从物理密钥提取私钥,相比于通过 USB 闪存盘存取私钥,对…
Docker + Php-fpm = 混乱

为了全 Docker 搭建博客,尝试了两种方法进行搭建:反代方法(WordPress 单独开 Web 服务器,Nginx 前端服务器做 SSL 终止)和 Php-fpm 方法(WordPress 启动 fpm,由 Nginx 直接连接并处理)。

由于一开始使用 Php-fpm 方法不顺利(Host 传递错误,让 WordPress 以为网站地址为内网地址;HTTPS 错误,导致大量资源被 WordPress 设置为 HTTP 而不走 SSL),继而使用反代,然后又出了问题wwww,先是静态资源 404(后经确定,由于 Nginx 路由配置疏漏,以为 `location /` 可以匹配所有请求,但实际上静态资源依旧需要单独设置路由),然后还是资源不走 HTTPS 的问题,最后经过群里 dalao 的解答下,通过映射 Nginx 服务器到 WordPress 网站根目录,然后通过 TCP 让 Nginx 连接 WordPress 的方法成功搭建,虽有部分小问题,但目前已修复,状态良好!

全 Docker 下搭建 Nginx + MySQL + WordPress 可能会遇到的问题:

  • 由于 WordPress 容器内,网站根目录为 `/var/www/html`,故 Nginx 不仅要映射到该目录在宿主机的真实路径,还要通过 Nginx 的 FastCGI 模块设置 open_basedir PHP 参数,添加 /var/www/html
  • WordPress 容器的 fpm 连接方式为 TCP!监听端口为 9000
  • 由于部分主题存在使用 JavaScript eval() 函数的情况,如果 CSP(Content-Security-Policy,内容安全策略)未允许 unsafe-eval 就会导致主题很多功能无法使用!解决方法就是在响应头的 CSP 添加 `’unsafe-eval’` 到尾部即可
225 日 , 2021 14:24
thumbnail
博客重建啦!
博客重建咯! 因个人原因导致博客停更,然后 Coding 又开始转型,就顺势把博客关掉了。说实话,在一些内容发布,或者归档上还是有些不方便。 我正在将旧博客的文章整理并重新发布在这个新博客上面!而且我会持续更新博文的!(绝对不是“三分钟热度”,肯定不是!) 新博客刚刚搭建,还在完善中,尽请期待! Nice Blog Blog 主页:Lam 的闲聊客…