CentOS 上 Apache 加载慢 的常见原因和排查方向,可以按下面几类来看:
Apache 默认会尝试对客户端 IP 做 反向 DNS 解析(HostnameLookups)。
表现:
解决:
HostnameLookups Off
在 httpd.conf 中确认,并重启:
systemctl restart httpd
CentOS 默认开启 SELinux。
可能问题:
排查:
getenforce
setenforce 0 # 临时关闭测试
如果变快,说明是 SELinux 策略问题,应正确配置而非长期关闭:
chcon -R -t httpd_sys_content_t /var/www/html
CentOS 默认加载大量模块。
常见问题:
优化:
LoadModuleevent 或 worker MPM(而非 prefork)查看 MPM:
httpd -V | grep MPM
如果是 PHP 网站:
php-fpm 未启用,使用 mod_php建议:
strace / xdebug 分析Apache 无法快速访问文件时会重试。
检查:
ls -Z /var/www/html
ps aux | grep httpd
top
iostat -x 1
df -i
常见问题:
查看连接数:
netstat -ant | wc -l
ss -s
如果日志在慢磁盘或 NFS:
CustomLog logs/access_log combined
可临时关闭测试:
CustomLog /dev/null combined
HostnameLookups Offtop / iostat如果你愿意,可以告诉我:
我可以帮你更精确定位。