
CentOS 上出现大量 sleeping(睡眠)进程怎么诊断?
sleeping(S 态)多数是正常的"等事件"状态;值得警惕的是 D 态(不可中断 IO 等待)和同一程序的大量 S 态堆积。诊断:ps/top 看分布、pstack/strace 看卡在哪、对照进程来源服务日志。
聚焦概念、架构、排障、价格与选型,一篇解决一个明确问题。

sleeping(S 态)多数是正常的"等事件"状态;值得警惕的是 D 态(不可中断 IO 等待)和同一程序的大量 S 态堆积。诊断:ps/top 看分布、pstack/strace 看卡在哪、对照进程来源服务日志。

在 SSL 配置里设 SSLProtocol -all +TLSv1.2 +TLSv1.3(或 all -SSLv3 -TLSv1 -TLSv1.1),重启 Apache;用 ssllabs 或 openssl s_client 验…

修改 client_max_body_size(如 100m)即可提高上传上限,可放 http/server/location 层;改完 nginx -t + reload;PHP 等应用层限制要同步调大。本文给出完整步骤与配套参数。

cron 不跑的排查顺序:crond 服务在不在 → cron 日志看有没有触发 → 时间格式与全角字符 → 环境变量/PATH 差异 → 脚本权限与 shebang。本文给出逐步排查法。

Nginx 默认在启动时解析 proxy_pass 的域名并缓存。强制每次解析:用 resolver 指令指定 DNS 服务器(valid 控制缓存时长),并把后端域名放进变量再 proxy_pass $变量。本文给出完整配置与坑点。

在监听 80 的 server 块里 return 301 https://$host$request_uri 即可全站跳 HTTPS;配合 HSTS 头让浏览器之后直连 HTTPS。本文给出完整配置与证书、回环等注意事项。

不能。证书由私钥对应的公钥签名而来,没有配对的私钥证书就无法用于 HTTPS。解法:找到当时生成 CSR 时配套的私钥,或重新生成密钥对并重新申请证书。

不能。私钥无法从证书推导;应找回申请证书时生成的私钥(.key/.pem),验证配对(openssl modulus 比对),找不到就重新生成密钥对并重新签发。Nginx 配置需同时指向两者。

crontab 里设 MAILTO=邮箱 即可接收任务输出邮件;只想收错误就把 stdout 重定向掉只留 stderr;前提是系统有可用的 MTA。本文给出配置与精细化收信技巧。

相对 URL 问题的根源是路径前缀与后端不一致:保持 ProxyPass 两端路径一致、用 ProxyPassReverse 修正重定向头、HTML 内容里的链接用 mod_proxy_html 或 mod_substitute 改…

相对 URL 错乱的处理:proxy_pass 路径对称、proxy_redirect 修正重定向头、sub_filter 改写页面内链接、Cookie 路径用 proxy_cookie_path。

rsync -av 源/ 目标/ 保留内部结构;要在目标侧重建完整路径(含源路径本身)用 -R(--relative),配 --no-implied-dirs 等微调。尾斜杠决定"目录本身"还是"内容"。本文讲清规则。