网络与 HTTPS
共 155 篇文章
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 隧道已建立,连接 MySQL 时仍报 channel open failed: Connection refused
SSH 认证和本地监听成功后,目标数据库连接仍可能失败。针对同机 MySQL 仅监听 IPv4 回环的情况,修正 -L 的远端目标,不扩大数据库公网监听。
Caddy 请求头匹配正确仍落到 respond:检查指令执行顺序
请求头匹配正确,Caddy 却始终返回固定拒绝提示时,检查适配后的指令顺序。用 handle 互斥分支或 route 明确顺序,并验证允许、拒绝和上游路径。
Traefik 同一站点 444 正常、443 返回 404:检查重复入口标签
同一 HTTPS router 写了重复 entrypoints 标签,444 正常而 443 返回 404;合并入口列表,并核对两个入口的认证与访问限制。
Nginx 配置报 events directive is not allowed here
Nginx 在 conf.d 文件中报 events 或 worker_connections directive is not allowed here,通常与 include 所在的配置层级有关。核对实际主配置,将事件设置合并回已有 events 块,再检查并加载。
Certbot 容器每天重复申请证书:只导出 PEM,没有保留续期状态
临时 Certbot 容器只导出证书文件,下一次任务却丢失续期状态。保留完整配置、复用 renew,并分别检查验证、部署和服务证书。
BIND 修改 MX 后仍收不到邮件:缺少尾点让域名重复拼接
BIND zone中的MX owner或目标缺少尾点,会被ORIGIN重复扩展。核对绝对名称、权威响应及SOA版本,再分别验收缓存与邮件投递。
Nginx 已配 TLS,wss 仍失败:前端连到了明文后端端口
wss 地址必须连接实际提供 TLS 的入口。区分浏览器到 Nginx 与代理到应用两段连接,再核对端口、路径、Upgrade 和应用握手结果。
BIND 添加 TXT 后报 CNAME and other data:同一名称不能兼作别名
BIND 新增 TXT 后区域无法加载,报 CNAME and other data。对照完整 owner 与验证要求,保留别名业务、区域检查和同步回退条件。
OpenSSH 报 no matching host key type found,允许 ssh-rsa 后又要求密码
连接旧 SSH 服务时,客户端先报 no matching host key type found,并列出 Their offer: ssh-rsa;增加 HostKeyAlgorithms +ssh-rsa 后,连接继续了,却没有使用原来的公钥登录,而是要求密码。这两个现象发生在不同认证阶段,不能用同一个选项解释。
WireGuard 加第二个客户端后第一个不通:每个客户端需要独立 Peer
WireGuard 加手机后笔记本不通,先核对独立 Peer 段、运行中公钥与隧道地址,再区分客户端默认路由和服务器对端归属。


