温馨提示×

Debian Apache怎样提速

小樊
33
2026-10-03 13:08:49
栏目: 智能运维

在 Debian 上优化 Apache(通常是 Apache2)速度,可以从系统层、Apache 配置、模块、缓存、PHP/后端几个方向入手。下面按实用程度整理一份「提速清单」。


一、基础系统与内核优化(先打底)

1. 保持系统更新

apt update && apt upgrade -y

2. 调整文件描述符限制

编辑:

/etc/security/limits.conf

添加:

* soft nofile 65535
* hard nofile 65535

3. 内核参数(高并发时)

/etc/sysctl.conf

示例:

net.core.somaxconn = 65535
net.ipv4.tcp_tw_reuse = 1

然后:

sysctl -p

二、Apache 模式与 MPM 选择(最关键)

1. 查看当前 MPM

apachectl -V | grep MPM

2. Debian 推荐方案

  • 静态内容 / 高并发 → event
  • PHP(非 PHP-FPM) → prefork
  • PHP-FPM(推荐) → event + php-fpm

3. 切换到 event + php-fpm(强烈推荐)

a2dismod php*
a2dismod mpm_prefork
a2enmod mpm_event proxy_fcgi
a2enconf php*-fpm

三、Apache 核心配置优化

编辑:

/etc/apache2/mods-enabled/mpm_event.conf

示例(4 核 8G):

<IfModule mpm_event_module>
    StartServers             4
    MinSpareThreads         25
    MaxSpareThreads         75
    ThreadLimit             64
    ThreadsPerChild         25
    MaxRequestWorkers      400
    MaxConnectionsPerChild 10000
</IfModule>

四、开启缓存(立竿见影)

1. 启用缓存模块

a2enmod expires headers cache cache_disk

2. 示例配置

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

五、启用压缩(减少传输)

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

六、关闭不必要模块(减少开销)

查看:

apache2ctl -M

常见可禁用:

a2dismod status autoindex negotiation

七、使用 HTTP/2(提速明显)

a2enmod http2

虚拟主机中:

Protocols h2 http/1.1

⚠ 注意:HTTP/2 需要 HTTPS


八、PHP 优化(如果用 PHP)

1. 使用 OPcache

apt install php-opcache

php.ini:

opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=10000

2. PHP-FPM 调优

/etc/php/*/fpm/pool.d/www.conf
pm = dynamic
pm.max_children = 50
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 20

九、静态资源 & 前端层面

  • 合并 CSS / JS
  • 使用 CDN
  • 图片 WebP
  • 开启浏览器缓存

十、压测与监控

apt install apache2-utils
ab -n 1000 -c 100 https://example.com/

监控:

htop
journalctl -u apache2

总结(最简提速路线)

✅ event + php-fpm
✅ 启用 deflate + expires
✅ 开启 OPcache
✅ 禁用无用模块
✅ 使用 HTTPS + HTTP/2

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

  • Debian 版本
  • Apache 版本
  • 是否用 PHP / 什么程序(WordPress?Laravel?)

我可以给你一套针对性配置。

0 踩