归档
时光荏苒,文字留痕
共 84 篇文章
真实 IP 一直在,只是没人用:一个点不动的开关,牵出一个 IP 伪造漏洞
文章排查了中转站启用 Passkey 后的连锁问题:Passkey 同时受 config.yaml 的 WebAuthn 安全配置和数据库运行开关控制,前者必须正确填写 RP ID 与 HTTPS Origin,后者显式为 false 时不会自动开启。登录即掉线源于会话 IP/UA 绑定,而 ESA 回源 IP 每请求变化,触发会话家族撤销。进一步发现 nginx 未还原真实 IP、应用优先信任可伪造的 CF-Connecting-IP,导致审计、限流和 IP 白名单失真并可被绕过。修复包括配置 ESA 官方网段、使用其真实 IP 头、覆盖转发头并限制源站访问;历史 1687 条审计记录中 1681 条 IP 不真实。
把本地 AI 英语学习项目部署到云服务器:我的 Docker 镜像与 1Panel 上线实录
文章记录了将本地 English Learning Agent 部署到腾讯云的完整流程:针对 4 核、3.4GB 内存且无法稳定访问 Hugging Face 的服务器,在开发机构建多阶段 Docker 镜像,预置 CPU 版 torch 与 embedding 模型,再压缩上传并导入服务器。通过 1Panel 编排容器,挂载 SQLite、音频和应用数据,处理非 root 用户权限、密钥与备份,配置域名 HTTPS 反向代理及长请求超时。上线后还需验证健康检查、账号登录、六步学习流程、日志和数据恢复,说明镜像启动不等于项目可用。
CPU 曲线骗了我:一台 2 核 1.6 GiB 无 Swap 的阿里云服务器周期性卡死排障
文章通过系统历史采样还原服务器反复失联的过程:网络与外部攻击并非主因,故障期间磁盘遭遇持续纯读风暴,IO 排队和等待飙升,内存随之承压;机器没有 Swap、多个容器未设内存上限,缓存被不断清理,最终陷入读盘与内存压力相互加剧的循环并硬崩溃。另发现家中设备每约 16 秒 SSH 登录,造成大量会话日志和用户级日志膨胀,但读风暴的发起进程仍未查明。作者启用 zram、调整换页策略并限制日志后,IO 压力、内存和网站状态明显改善;提醒排障应保留现场,故障再现时用 pidstat 定位进程。
编辑器与周边:配好你的 VS Code 开发驾驶舱
本文介绍如何将 VS Code 配置为 Python 开发环境:安装 Python、Pylance 和中文化插件,打开项目后选择对应的 `.venv` 解释器,确保补全、运行和依赖使用正确。文章还建议启用自动保存、调整字体与空格显示,合理选择等宽字体和高对比度主题,并介绍 Git 图形面板、Typora/Obsidian、Windows Terminal 等配套工具。最后总结 Scoop、uv、Git 与 VS Code 的分工,强调虚拟环境、包管理和版本控制等方法可迁移到其他平台。
Git 扫盲:版本控制与你的第一行代码托管
Git 是管理代码历史、回退改动和协作合并的工具。文章介绍了工作区、暂存区、仓库与提交的关系,以及“修改—暂存—提交”的基本流程,并演示了初始化仓库、查看历史、切换快照和撤销改动。通过 SSH 密钥可免密连接 Gitee,将本地代码推送到云端,实现备份与协作。日常应先拉取、再修改提交并推送;遇到身份配置、公钥验证、远程冲突或误暂存等问题,可用相应命令排查恢复。
Python 环境管理:用 uv 跑通你的第一个项目
文章介绍如何用 uv 管理 Python 开发环境并完成首个项目。uv 可统一管理 Python 版本、虚拟环境和第三方依赖,避免不同项目的库版本冲突。通过 `uv init`、`uv add` 和 `uv run`,无需手动激活环境即可创建、安装依赖并运行项目;配置国内镜像可提升下载速度。`uv.lock` 精确记录依赖版本,队友执行 `uv sync` 即可复现环境。文章还总结了镜像报错、版本不一致、导入失败和协作同步等常见问题的排查方法。
环境搭建第一课:用 Scoop 统一管理你的开发工具
本文介绍如何在 Windows 上使用 Scoop 统一管理开发工具。Scoop 无需管理员权限,软件安装在用户目录,支持统一搜索、安装、更新和卸载,减少捆绑软件、系统污染与安装残留。文章说明了执行策略配置、使用国内镜像安装及更换软件源的方法,并介绍 `main`、`extras` 等 bucket。掌握 `search`、`install`、`list`、`update`、`uninstall` 等命令后,可完成 Git、uv 和 VS Code 的安装与验证,同时了解环境变量未刷新、网络失败和命令无法识别等常见问题的处理方式。
AI 冲击的知识密集新时代
AI 冲击的知识密集新时代:如何看待 DeepSeek 刘胜与的《我不得不把才华埋葬在昨天》 引言 新一代模型同时击穿了知识工作者的"思维方式"(循环推理 + 隐式分析)和"工作方式"(自动化闭环),人类工程师基于"经验"和"串行试错"建立的旧范式正在失效。 一、冲击现场:算子开发被彻底打穿 以文章
从 CI 红灯到 Scoop 分发:PathEditor 5.1.1 的一次发布链路复盘
文章复盘 PathEditor 5.1.1 从质量门修复到发布分发的全过程。项目虽能构建、测试通过,但覆盖率、格式、Clippy 和 E2E 暴露出门禁失效;后续又发现前后端字段命名不一致、验证队列时序丢失、禁用状态跨重启消失、部分保存被误报成功等问题。修复后将发布流程纳入 CI,并通过个人 Scoop bucket 分发 CLI。文章强调:测试通过不等于真实环境正确,必须验证数据契约、状态持久化、安装来源和实际 PATH 命令解析,同时区分 mock、工具链和发布资产的差异。
iCAN AI 无代码智能体挑战赛:一份参赛攻略,和三次踩坑记录
文章系统梳理了2026年iCAN AI无代码智能体挑战赛的规则、评分、赛题与参赛策略。比赛报名和提交截止10月15日,创新性与技术实现占60分。秒哒作品较多且教育类高度同质化,DuMate仅1件但提交链路存在不确定性,建议先验证发布和匿名访问流程。选题可避开教育、校园、游戏,关注企业服务、零售消费、数据分析等空白领域。参赛还需重点检查链接形态、匿名访问、ICP备案、免费额度、后端能力及PDF限制,避免因提交不合规直接失去评审资格。文章同时纠正了虚构往届获奖案例和错误链接检测方法。