查找问题与解决方法
Caddy 配了 trusted_proxies,remote_ip 仍是 Cloudflare:看 client_ip 字段
可信代理已解析出 client_ip,remote_ip 仍为代理地址并不表示配置失效。按连接端与访客字段区分日志、访问规则和应用代理设置。
Nginx 在 if 中设置 proxy_set_header 报 directive is not allowed here
Nginx 的 proxy_set_header 不允许放在 if 中。用 HTTP 级 map 计算条件值,在 location 设置请求头,并检查默认 Accept、URI 匹配和代理头继承。
curl 已用 SOCKS5 代理,目标域名仍在本机解析失败
区分SOCKS5连接与目标域名解析位置,使用socks5h或socks5-hostname让代理解析目标,并保留TLS验证和代理策略。
Nginx 反代路径下的 JS、CSS 被静态文件正则截走
反代前缀下只有 JS、CSS 请求落到 Nginx 本地目录时,核对同级扩展名正则是否覆盖普通前缀选择。用限定范围的 ^~ 保留资源代理,并验证原有权限与 URI 映射。
SSH 报 .pub 文件权限过宽
SSH 报 .pub 文件 Permissions 0644 are too open 时,先确认公钥是否被当作本地私钥读取。核对 IdentityFile、真实私钥权限和 agent 身份,避免只改公钥权限后继续遇到认证失败。
SSH 隧道已建立,连接 MySQL 时仍报 channel open failed: Connection refused
SSH 认证和本地监听成功后,目标数据库连接仍可能失败。针对同机 MySQL 仅监听 IPv4 回环的情况,修正 -L 的远端目标,不扩大数据库公网监听。
find -mtime +1 漏掉一天前的文件:时间先按完整天数取整
GNU find 的 -mtime +1 匹配至少 48 小时前修改的文件。按完整时间段、明确截止点或日历日选择条件,先核对边界名单,再接回归档或清理任务。
GitHub Desktop 报 Filename too long:系统 Git 配置未必被使用
Desktop 克隆报 Filename too long 而终端正常时,核对系统与用户配置作用域,缩短目标目录,并确认长路径开关及其工具链限制。
Caddy 请求头匹配正确仍落到 respond:检查指令执行顺序
请求头匹配正确,Caddy 却始终返回固定拒绝提示时,检查适配后的指令顺序。用 handle 互斥分支或 route 明确顺序,并验证允许、拒绝和上游路径。
MongoDB 聚合 $size 遇到缺失字段时报 must be an array
用 $isArray 和 $cond 区分数组与缺失、null、错误类型,保留异常标记;避免仅用 ifNull 或批量改文档掩盖数据问题。
GNU tar 追加 tar.gz 文件时报 Cannot update compressed archives
GNU tar 不能对压缩归档直接执行追加或更新。将完整输入合并为一次创建,或先收集未压缩归档再压缩,避免重复 -c 覆盖和误删源文件。
PostgreSQL 在 WHERE 中引用 SELECT 列别名,报 column does not exist
PostgreSQL 的 WHERE 不能引用同层 SELECT 输出别名。简单字段改用原列,复杂表达式可在内层命名后由外层筛选,同时保留聚合与空值条件的含义。
硬链接备份的 du 大小忽大忽小:先确定是否在同一次扫描中统计
多份硬链接备份一起运行 du 时,后面的目录可能很小;单独统计却变大。核对一次扫描的去重范围,区分集合总量、单份内容和重复计名。
Java 对 Arrays.asList 返回的列表调用迭代器 remove 报 UnsupportedOperationException
Arrays.asList 返回固定大小的数组视图,迭代器不能删除元素。按需复制为 ArrayList,并检查原数组关联、元素引用与迭代器调用顺序。
GNU sort -g 在小数逗号环境中把科学计数值排错
点小数的科学计数值与 LC_NUMERIC 的小数逗号规则不一致时,sort -g 可能只读到整数前缀。用命令级 C locale 排序,并核对列号和浮点精度边界。
LazyColumn 报 infinity maximum height
LazyColumn 报无限高度异常时,按整页滚动、固定页头或独立面板选择布局,统一 LazyColumn 内容,并沿父级排查无界测量约束。
cut 按空格取第二列时,连续空格让结果变成空行
cut 以单个空格分隔时,相邻空格之间的空字段也占列号。对空格和 Tab 对齐的文本使用 awk 默认分割,并检查缺失列和原样输出行的差异。
Linux 用 cp 覆盖运行中的程序时报 Text file busy
Linux 用 cp 覆盖运行中的程序报 Text file busy 时,检查实际执行映像;安排正常停机安装,或按同挂载点原子替换流程发布,再核对运行版本。


