Ubuntu 上 Apache2 访问慢 / 响应慢 是常见问题,原因通常不在“Apache 本身”,而在系统配置或环境。下面按最常见 → 较少见给你一个排查清单。
Apache 默认会尝试对客户端 IP 做 反向 DNS 解析。
✅ 解决:
sudo nano /etc/apache2/apache2.conf
添加或确认:
HostnameLookups Off
重启:
sudo systemctl restart apache2
.htaccess(AllowOverride All)如果网站目录启用了 .htaccess:
✅ 解决(生产环境推荐):
<Directory /var/www/html>
AllowOverride None
</Directory>
不是 Apache 慢,是 PHP 慢。
检查:
php -v
确认:
php-fpm(推荐)✅ 推荐方式:
sudo apt install php-fpm
Apache 使用 proxy_fcgi 而不是 mod_php
Ubuntu 默认可能是 prefork,在高并发下很慢。
查看:
apache2ctl -M | grep mpm
✅ 推荐(PHP-FPM):
mpm_event切换:
sudo a2dismod mpm_prefork
sudo a2enmod mpm_event
free -h
如果 Swap 在使用 → 慢
解决:
iostat -x 1
如果 %util 接近 100%,是磁盘问题。
Apache 监听了 IPv6,但客户端走 IPv4 慢。
检查:
sudo netstat -tulnp | grep apache
可临时禁用 IPv6 测试。
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5
不要设太大。
禁用不用的模块:
sudo a2dismod status
sudo a2dismod autoindex
time curl http://localhost
你可以补充:
我可以直接给你一套「最优配置」。