UnicodeDecodeError: 'utf-8' codec can't decode byte 文件编码排查与解决
用 utf-8 读取一个 GBK 文件就会抛 UnicodeDecodeError。本文给出最小复现,并对比 errors='replace' 与正确 encoding 两种修法。
阅读全文 →记录 Web 工程实践:架构、性能、部署与踩过的坑。
用 utf-8 读取一个 GBK 文件就会抛 UnicodeDecodeError。本文给出最小复现,并对比 errors='replace' 与正确 encoding 两种修法。
阅读全文 →uWSGI 启动报 bind(): Address already in use,多数不是"端口被别人占了",而是旧进程没退干净。本文用 Python 标准库复现该报错,讲清 4 类根因,并给出上线前端口预检脚本。
阅读全文 →pip install 显示 Successfully installed,import 却报 ModuleNotFoundError。根因几乎总是"装包的 Python"和"跑代码的 Python"不是同一个。本文用同一台机器上的两个解释器实测复现,给出三行定位法与三类根因的对应解法。
阅读全文 →整合项目时,我把生产数据库密码硬编码进了脚本、明文写进了工作日志,还一起提交了。万幸在 push 之前被自己拦下来。本文复盘三个泄露点、四步修复,以及一份可以直接抄的提交前凭据自检脚本——重点是两个反直觉认知:commit 之后仍可挽回,而 .gitignore 漏掉的东西往往比你想的多。
阅读全文 →在 WSL2 里起一个长期运行的开发服务,nohup 会死、setsid 也会死,连 systemd 服务不 enable 照样被停。本文记录三次真实失败、journal 里的关键证据,以及最终可用的完整配置,附带"当场 curl 200 是假信号"等四个反直觉的坑。
阅读全文 →你的 HTTPS 证书真的会自动续期吗?本文记录一次真实的排查:证书只剩 29 天、acme.sh 完全没有定时任务、certbot.timer 空跑制造"很安全"的假象。附完整的自动续期配置、一次续期失败的定位过程,以及三个极易误判的信号。
阅读全文 →小程序有用户上传图片就必须接内容安全审核。很多人以为要买第三方服务,其实微信官方 imgSecCheck 免费,20 万次/天足够中小规模用。本文给出完整可运行代码(含 access_token 缓存、图片压缩、multipart 上传),并重点讲一个容易被忽略的设计:审核服务不可用时,绝不能默认放行。
阅读全文 →项目路径带中文,rm 报错还中断命令链、python -m venv 静默失败、node 说文件不存在、npm install 报 EPERM。四个看似无关的问题,其实是同一个根源。本文逐个拆解根因与解法,附可复现命令和排查清单。
阅读全文 →WSL2 里服务明明起来了,Windows 却访问不了?同一份配置隔了一晚行为完全相反。本文用一次真实排障,讲清 mirrored 与 NAT 两种网络模式的差异、三步定位法,以及为什么「先查 .wslconfig」比改端口转发有用得多。
阅读全文 →