温馨提示×

怎样优化debian apache性能

小樊
42
2026-09-09 12:42:55
栏目: 智能运维

优化 Debian 上 Apache 的性能,通常可以从系统层面、Apache 配置、模块优化、缓存与压缩、PHP/后端、监控几个方面入手。下面按实用优先级给出建议。


一、系统层面优化

1. 使用合适的 MPM(多路处理模块)

Debian 默认可能是 mpm_prefork、worker 或 event,强烈推荐 event(性能最好):

sudo a2dismod mpm_prefork
sudo a2enmod mpm_event
sudo systemctl restart apache2

如果是 PHP,prefork 更容易兼容;但生产环境建议用 PHP-FPM + event


2. 增大系统文件描述符限制

编辑:

sudo nano /etc/security/limits.conf

添加:

* soft nofile 65535
* hard nofile 65535

Apache 配置中:

<IfModule mpm_event_module>
    ServerLimit 256
    MaxRequestWorkers 400
    ThreadsPerChild 25
</IfModule>

二、Apache 核心配置优化

1. 关闭不必要的模块

查看已启用模块:

apache2ctl -M

常见可禁用:

sudo a2dismod status
sudo a2dismod autoindex
sudo a2dismod cgi

2. 调整 KeepAlive

KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5

太高会占用连接,太低会增加 TCP 开销


3. 启用压缩(非常重要)

sudo a2enmod deflate

示例:

<IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE text/html text/css application/javascript
</IfModule>

4. 启用缓存

sudo a2enmod expires
<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType image/jpg "access plus 1 month"
    ExpiresByType text/css "access plus 1 week"
</IfModule>

三、PHP / 后端优化(如适用)

使用 PHP-FPM(推荐)

sudo apt install php-fpm
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php-fpm

优点:

  • 更高并发
  • 更低内存
  • 更稳定

四、静态资源与 CDN

  • 图片、JS、CSS 放 CDN
  • 使用 mod_cache 或反向代理(Nginx)
  • 启用 HTTP/2(见下)

五、启用 HTTP/2(显著提速)

sudo a2enmod http2

VirtualHost 中:

Protocols h2 http/1.1

需要 HTTPS


六、日志优化(高并发时重要)

减少日志量:

CustomLog ${APACHE_LOG_DIR}/access.log combined env=!dontlog
SetEnvIf Request_URI "\.(jpg|png|css|js)$" dontlog

七、监控与压测

查看状态

apache2ctl -S
apache2ctl -M

压测

ab -n 1000 -c 100 http://localhost/

八、推荐生产组合(最佳实践)

✅ Debian + Apache(event) + PHP-FPM
✅ HTTPS + HTTP/2
✅ mod_deflate + mod_expires
✅ 静态资源走 CDN


如果你愿意,可以告诉我:

  • Debian 版本
  • Apache 版本
  • 是否用 PHP / WordPress / Laravel
  • 当前并发和内存情况

我可以给你一套可直接用的配置文件。

0 踩