程序员茄子
全部
编程
代码
资讯
案例
综合
联系我们
综合(第2页)
php
mysql
shell
go
vue
css
api接口对接
支付接口对接
Docker Engine 29 升级:API 1.52 抬高最低版本,网络与 Go SDK 也要跟着改
综合
Docker Engine 29 升级:API 1.52 抬高最低版本,网络与 Go SDK 也要跟着改
2026-10-28 21:06:19
Docker Engine 29 把 API 抬到 1.52、daemon 最低支持 v1.44,老客户端和管理面板会直接连不上;新安装默认用 containerd image store,nftables 下不再自动开 IP forwarding。Go SDK 也做了成规模的 option struct 与 netip 改造,文中逐项列了升级检查。
Docker
容器
运维
升级
nginx 1.31.0 与 1.30.x:反代配置要跟着改的几处
综合
nginx 1.31.0 与 1.30.x:反代配置要跟着改的几处
2026-10-28 21:06:19
nginx 1.31.0 开始拒绝 HTTP/2、HTTP/3 请求里的 Connection、Keep-Alive、Transfer-Encoding 等逐跳头,TE 只允许 trailers;1.29.7 起 upstream keepalive 默认开启、proxy_http_version 默认 1.1,老配置里的手工补丁要清理。文中给出 400 排查命令与安全修复清单。
nginx
反向代理
运维
HTTP2
Redis 8.4.7 / 8.4.8 集群安全修复:总线端口无认证,以及 4GB PUBLISH 的堆溢出
综合
Redis 8.4.7 / 8.4.8 集群安全修复:总线端口无认证,以及 4GB PUBLISH 的堆溢出
2026-10-28 21:03:21
Redis 8.4.7 与 8.4.8 两个安全版本修了 cluster bus 无认证、事务内 ACL 回收绕过、TimeSeries/Vector Set 崩溃,以及 4GB PUBLISH 传播时的堆溢出。文中给出确认 tls-cluster 状态、收敛总线端口、滚动升级顺序,以及开启 cluster-bus-port-protected-mode 前必须先配好 TLS 的原因。
Redis
集群
安全更新
运维
Git 2.52 maintenance.geometric:大仓库怎么绕开「50 个 packfile 就 all-into-one」
综合
Git 2.52 maintenance.geometric:大仓库怎么绕开「50 个 packfile 就 all-into-one」
2026-10-27 21:05:18
git gc 在 packfile 超过 50 个时会把所有 pack 合成一个,大 monorepo 里这一下就是几十分钟。Git 2.52 的 geometric 策略改成按对象数等比合并、只在必要时退回全量 gc,顺带整理 git repo info、sparse-checkout clean 等新命令。
Git
运维
工具链
Percona Server 与 MySQL 官方版 thread pool 实测:2560 连接下 371 对 122 TPS,buffer pool 32G 后结论反转
综合
Percona Server 与 MySQL 官方版 thread pool 实测:2560 连接下 371 对 122 TPS,buffer pool 32G 后结论反转
2026-10-27 21:04:23
同源的 thread pool,在两套实现里表现完全不同。实测数据说明:数据集放不进 buffer pool 时 Percona 更快,能完全缓存时 MySQL 反超;2560 连接下 pool 把 TPS 从 122 拉到 371,低并发时则没有收益。
MySQL
性能测试
运维
MySQL 指标报出异常后:从 OpenTelemetry 面板走到 Performance Schema 证据
综合
MySQL 指标报出异常后:从 OpenTelemetry 面板走到 Performance Schema 证据
2026-10-27 21:03:27
仪表盘只能告诉你「有变化」,根因还得回 MySQL 收证据。给出一张症状到证据的对照表,以及从行锁等待指标到 data_lock_waits、再到当前 SQL 的两步查询,顺带列出五个常见的排查错误。
MySQL
运维
监控
systemd 258 升级踩坑:cgroup v1 没了、uaccess 规则失效、tty 默认 0600
综合
systemd 258 升级踩坑:cgroup v1 没了、uaccess 规则失效、tty 默认 0600
2026-10-24 21:07:32
systemd 258 移除 cgroup v1、把 tty/pts 默认权限改成 0600、让只写 ACTION=="add" 的 uaccess 规则失效,还删掉了 telinit/runlevel 和 /forcefsck。这些改动不会报错,只会在升级后某天让设备权限或启动脚本静默失效。本文按现象、排查命令、改法逐条整理,并给出升级前清单。
systemd
Linux
运维
Redis 原子槽迁移:CLUSTER MIGRATION 把 -ASK 和 TRYAGAIN 从扩缩容里拿掉了
综合
Redis 原子槽迁移:CLUSTER MIGRATION 把 -ASK 和 TRYAGAIN 从扩缩容里拿掉了
2026-10-24 21:06:09
逐 key MIGRATE 做扩缩容时,客户端会撞上 -ASK、多 key 命令的 TRYAGAIN、迁移失败后的脏状态,以及副本把「已迁走」回成「已删除」。Redis 8.4 的 CLUSTER MIGRATION 改成整槽复制加实时增量、最后一次原子移交。本文给上线流程、选槽依据,以及搜索与时间序列命令在迁移窗口内的已知限制。
Redis
集群
运维
nginx 谓词 location + client_body_early_read + json_set:按 payload 路由的真实代价
综合
nginx 谓词 location + client_body_early_read + json_set:按 payload 路由的真实代价
2026-10-24 21:05:16
nginx 1.31.5 让 location 可以直接匹配变量,也带来了在原 location 匹配之前读 body 的开关和原生 JSON 字段提取。三者配合能在 /mcp、/api/v1 这种同一 URI 上按 payload 分流,但会改变缓冲时机、临时文件行为和限额保护的位置。本文给配置片段与上线前的验证清单。
nginx
运维
反向代理
凌晨 3 点的备份脚本:用 set -x、PS4 行号、trap ERR 和 shellcheck 逐层排查
综合
凌晨 3 点的备份脚本:用 set -x、PS4 行号、trap ERR 和 shellcheck 逐层排查
2026-10-24 20:01:33
一个每天凌晨跑的备份脚本,失败了却永远打印「备份完成」。本文从这段坏脚本出发,讲三层 Bash 排错手段:set -x 配自定义 PS4 打出文件名和行号、set -Eeuo pipefail 加 trap ERR 捕获 LINENO 与 BASH_COMMAND、bash -n 与 shellcheck 静态检查,末尾附可直接抄走的生产脚本骨架和断言写法。
Shell
Bash
运维
脚本调试
cron
Nginx UI 六个 CVE 复盘:AuthRequired 只校验 JWT,不校验会话,v2.5.0 才补上 RequireSecureSession
综合
Nginx UI 六个 CVE 复盘:AuthRequired 只校验 JWT,不校验会话,v2.5.0 才补上 RequireSecureSession
2026-10-23 21:02:14
Nginx UI v2.5.0 一次修掉六个 CVE,五个都源自同一个假设:只要 JWT 有效就算已认证。梳理 2.0.0–2.4.x 的认证、CSRF、节点 token、备份 symlink 与升级 digest 链路,给出升级后的检查与轮换步骤。
Nginx
安全
运维
鉴权
自建 ntfy 推送通道:Docker 部署、Token 认证与 Nginx 长连接反代
综合
自建 ntfy 推送通道:Docker 部署、Token 认证与 Nginx 长连接反代
2026-10-23 20:00:57
用 Docker 部署自建 ntfy 推送服务,端口只绑 127.0.0.1、开认证并发 token,Nginx 反代必须关 proxy_buffering 并把超时拉到 1d,否则手机端收不到消息。附磁盘告警、systemd OnFailure、Uptime Kuma 接入与心跳防沉默。
ntfy
运维
Docker
Nginx
告警
binlogless 从库 + 并行复制:复制的 FLUSH PRIVILEGES 在 mysql.gtid_executed 里留空洞,重启后复制中断
综合
binlogless 从库 + 并行复制:复制的 FLUSH PRIVILEGES 在 mysql.gtid_executed 里留空洞,重启后复制中断
2026-10-20 21:09:00
binlogless 从库开了 relay-log recovery、并行复制和 commit-order 保持时,复制过来的 FLUSH PRIVILEGES 可能不在 mysql.gtid_executed 里留记录;重启后从库重请求已应用事务,主库 binlog 已 purge 就报 Cannot replicate。附适用条件、巡检 SQL 与规避手段。
MySQL
复制
运维
GTID
PHP 8.5.11 安全修复按优先级过一遍:FPM 的 IPv6 ACL 绕过该先处理
综合
PHP 8.5.11 安全修复按优先级过一遍:FPM 的 IPv6 ACL 绕过该先处理
2026-10-20 21:04:01
PHP 8.5.11 的安全修复按上线优先级重排:FPM listen.allowed_clients 的 IPv6 ACL 绕过取决于你用 TCP 还是 unix socket;OpenSSL 出现 SAN 不匹配回退 CN 与通配符 CN 堆溢出;HTTP stream wrapper 重定向会把 Authorization 发到另一主机。附核查命令与收紧配置。
PHP
安全运维
php-fpm
升级
NAS 上跑 Motrix Server:无头部署、三端口与 /data 备份边界
综合
NAS 上跑 Motrix Server:无头部署、三端口与 /data 备份边界
2026-10-19 21:32:14
Motrix Server 在 NAS 上的无头 Docker 部署:8080/16801/16800 三个端点各自的职责、非 root 只读根文件系统、首次登录的 operator token、/data 必须备份的内容,以及 aria2 RPC 默认关闭的原因与打开方式。
自托管
Docker
NAS
下载工具
GHCR
用 BillionMail 自建邮局:两种装法、七个容器,以及上线前必须改掉的默认值
综合
用 BillionMail 自建邮局:两种装法、七个容器,以及上线前必须改掉的默认值
2026-10-19 21:31:21
BillionMail 自托管邮局部署笔记:一键脚本与 Docker Compose 两条路的差异、七个容器的职责与端口,以及 25 端口出站、PTR、SPF/DKIM/DMARC 这些装完才知道要补的外部条件,附默认口令与 docker.sock 的风险点。
邮件服务器
自托管
Docker
运维
logrotate:copytruncate 与 create 怎么选,以及「轮转了但磁盘不释放」的排查顺序
综合
logrotate:copytruncate 与 create 怎么选,以及「轮转了但磁盘不释放」的排查顺序
2026-10-19 21:05:23
logrotate 的 create 与 copytruncate 本质是进程 fd 指向哪个 inode。讲清 Nginx/PHP-FPM 必须 reopen、copytruncate 的丢日志窗口与 IO 峰值、df 与 du 不一致时用 lsof +L1 定位、以及容器里为什么不该跑 logrotate。
Shell
运维
日志
Linux
Caddy 2.10 的 ECH 自动化:要编进 DNS 模块,升级后通配符证书还会改变签发行为
综合
Caddy 2.10 的 ECH 自动化:要编进 DNS 模块,升级后通配符证书还会改变签发行为
2026-10-19 21:03:36
Caddy 2.10 的 ECH 自动化需要把 DNS provider 模块编进二进制、指定指向本机的外层域名,且 CNAME 域名不会自动发布 ECH 记录。同时提醒通配符证书已成默认行为、libdns 1.0 与 Go 版本策略带来的升级阻塞。
Caddy
TLS
运维
反向代理
用 Beszel 搭一套轻量监控:hub + agent 的 Docker Compose 部署笔记
综合
用 Beszel 搭一套轻量监控:hub + agent 的 Docker Compose 部署笔记
2026-10-18 21:31:11
Beszel 用 Go 写的轻量监控:hub 基于 PocketBase,agent 采集宿主与 Docker 容器指标。含完整 docker-compose、KEY/TOKEN 回填与 unix socket 接法、告警通知渠道,以及 host 网络、SMART 权限、公网暴露的取舍。
服务器监控
Beszel
Docker
运维
自托管
YARMCP:把仓库克隆到自己的服务器,让 Claude Code 读到最新源码
综合
YARMCP:把仓库克隆到自己的服务器,让 Claude Code 读到最新源码
2026-10-18 21:31:11
自托管 MCP 服务器 YARMCP:把常用仓库浅克隆到服务器,AI 助手直接读本地源码,绕开 GitHub API 每小时 5000 次限流。含 Docker Compose 部署、Bearer/OAuth 两种认证、repos.yaml 配置与 CLAUDE.md 接法。
MCP
自托管
Claude
Code
Docker
AI编程
nginx 1.30 升级后最容易漏掉的默认值:代理上游默认走 HTTP/1.1 并开启 keep-alive
综合
nginx 1.30 升级后最容易漏掉的默认值:代理上游默认走 HTTP/1.1 并开启 keep-alive
2026-10-17 21:07:25
nginx 1.30 把代理到上游的 HTTP 版本默认从 1.0 改成 1.1 并默认开启 keep-alive。梳理由此带来的连接复用、后端 idle timeout 不匹配导致的 502、残留 Connection close 反向抵消,以及日志字段与 stub_status 的验证方法。
nginx
运维
反向代理
升级踩坑
用发行版自带工具做服务器自动化:systemd timer、加固 SSH、机群循环与自动打补丁
综合
用发行版自带工具做服务器自动化:systemd timer、加固 SSH、机群循环与自动打补丁
2026-10-16 21:32:19
不用引入新工具,用主流发行版自带的 systemd timer/cron、OpenSSH 加固(受限密钥 command=/from=、Match+ProxyJump)、ssh+bash 机群循环、logrotate 与 unattended-upgrades/dnf-automatic 搭一套可复现的服务器自动化,并说清脚本能执行但不能观察/决策/解释的边界。
运维
Shell
Linux
SSH
systemd
Hermes Agent v0.22.0:免 Key 引导上手,一键装本地 llama.cpp
综合
Hermes Agent v0.22.0:免 Key 引导上手,一键装本地 llama.cpp
2026-10-16 21:06:46
Nous Research 的 Hermes Agent v0.22.0:新装桌面版用免费模型 nous/welcome 免 API Key 引导配置,新增 Gmail/Linear/Notion 连接器,内置一键 llama.cpp 本地模型运行时,600 插件目录,源码从 106 万行瘦身到 69.8 万行。含安装与更新通道。
AI
Agent
开源
llama.cpp
工具
SemVer
Vite+ 1.0:用一个 vp 命令替掉 vite、vitest、eslint、prettier 的组合
综合
Vite+ 1.0:用一个 vp 命令替掉 vite、vitest、eslint、prettier 的组合
2026-10-16 21:04:17
VoidZero 的 Vite+ 1.0 正式发布:单个 vp 命令统一管理 Node 运行时、包管理器、dev server、lint/format、测试、构建与任务,替掉 vite/vitest/eslint/prettier/tsup/turbo 的组合。含底层组件、vp migrate 迁移步骤与 1.1 的启动/内存优化。
Vite
前端工具链
Rolldown
Node.js
版本号
大家都在搜索什么?
devops
易支付
一个官网+多少钱
统一接受回调
统一回调
python
sub
node
宝塔日志
mysql
shell
ElasticSearch
css
vue
api接口对接
2025
支付接口对接
go
php
php回调
上一页
1
2
3
4
5
6
7
…
20
下一页
共 20 页
到第
页
确定