温馨提示×

debian lamp如何优化

小樊
38
2026-09-23 01:55:10
栏目: 智能运维

在 Debian 上优化 LAMP(Linux + Apache + MySQL/MariaDB + PHP)可以从系统层、Apache、MySQL/MariaDB、PHP、缓存与运维几个方面入手。下面给你一套实用、可落地的优化方案。


一、系统层优化(基础)

1. 更新系统

apt update && apt upgrade -y

2. 调整内核参数(/etc/sysctl.conf)

net.core.somaxconn = 65535
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 30
vm.swappiness = 10
sysctl -p

3. 文件描述符限制

/etc/security/limits.conf

* soft nofile 65535
* hard nofile 65535

二、Apache 优化

1. 选择合适的 MPM(推荐 event)

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

2. 调整 MPM 配置

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

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

3. 关闭无用模块

a2dismod status autoindex cgi

4. 开启压缩与缓存

a2enmod deflate expires headers

示例:

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

<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType image/jpg "access plus 30 days"
</IfModule>

三、PHP 优化(使用 PHP-FPM)

1. 使用 PHP-FPM 而非 mod_php

apt install php-fpm php-cli php-mysql

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
pm.max_requests = 500

3. php.ini 优化

memory_limit = 128M
opcache.enable=1
opcache.memory_consumption=128
opcache.revalidate_freq=60
upload_max_filesize = 20M
post_max_size = 20M

四、MySQL / MariaDB 优化

1. 使用 MariaDB(Debian 默认)

apt install mariadb-server

2. 基础参数(/etc/mysql/mariadb.conf.d/50-server.cnf)

示例(2G~4G 内存):

innodb_buffer_pool_size = 1G
innodb_log_file_size = 256M
query_cache_type = 0
max_connections = 200
slow_query_log = 1

3. 定期优化表

OPTIMIZE TABLE table_name;

五、缓存方案(非常重要)

1. OPcache(PHP)

已包含在 php-opcache

2. Redis / Memcached

apt install redis-server

用于:

  • 会话存储
  • 数据库缓存
  • WordPress 等 CMS 缓存

六、安全与稳定

  • 开启 UFW 防火墙
ufw allow 22,80,443/tcp
ufw enable
  • 使用 HTTPS(Let’s Encrypt)
apt install certbot python3-certbot-apache
certbot --apache
  • 定期备份(mysqldump + rsync)

七、监控与调优工具

apt install htop iotop nload

数据库:

SHOW PROCESSLIST;

八、典型场景建议

场景 建议
小型网站 event + php-fpm + opcache
高并发 Redis + CDN + 静态化
数据库重 提升 innodb_buffer_pool
动态接口 减少 PHP 请求时间

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

  • Debian 版本
  • 内存大小
  • 网站类型(WordPress / 自研 / API)

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

0 踩