温馨提示×

怎么优化ubuntu apache配置

小樊
34
2026-10-19 18:33:50
栏目: 智能运维

优化 Ubuntu 上的 Apache 配置可以从性能、安全、稳定性三个方向入手。下面按“常见且实用”的方式给你一个系统清单,适合生产环境。


一、基础优化(必做)

1. 选择合适的 MPM(多处理模块)

查看当前 MPM:

apache2ctl -V | grep -i mpm

推荐:

  • 静态内容 / 高并发:event
  • PHP(非 FPM):prefork
  • PHP-FPM:event

切换 MPM(以 event 为例):

sudo a2dismod mpm_prefork
sudo a2enmod mpm_event
sudo systemctl restart apache2

2. 调整 MPM 参数

编辑:

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

示例(4 核 8G):

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

MaxConnectionsPerChild 防止内存泄漏


二、性能优化

3. 开启 KeepAlive(适度)

sudo nano /etc/apache2/apache2.conf
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5

4. 启用压缩(gzip)

sudo a2enmod deflate

编辑:

sudo nano /etc/apache2/mods-enabled/deflate.conf
AddOutputFilterByType DEFLATE text/html text/css application/javascript

5. 启用缓存

sudo a2enmod expires

示例:

<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>

6. 使用 PHP-FPM(强烈推荐)

sudo apt install php-fpm
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php-fpm
sudo a2dismod phpX.X
sudo systemctl restart apache2

三、安全优化

7. 隐藏 Apache 版本

ServerTokens Prod
ServerSignature Off

8. 禁用目录浏览

Options -Indexes

9. 限制访问

<Directory /var/www/html/admin>
    Require ip 192.168.1.0/24
</Directory>

10. 启用 HTTPS(Let’s Encrypt)

sudo apt install certbot python3-certbot-apache
sudo certbot --apache

四、日志与监控

11. 日志级别控制

LogLevel warn

12. 使用 Logrotate

Ubuntu 默认已配置:

/etc/logrotate.d/apache2

五、系统层配合

  • 调整 ulimit
  • 使用 opcache(PHP)
  • 使用 HTTP/2:
sudo a2enmod http2
Protocols h2 http/1.1

六、验证与重启

apache2ctl configtest
sudo systemctl restart apache2

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

  • 服务器配置(CPU / 内存)
  • 是否用 PHP / WordPress / 静态站
  • 并发量大概多少

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

0 踩