温馨提示×

ubuntu lamp怎么优化

小樊
33
2026-10-24 14:34:58
栏目: 智能运维

在 Ubuntu 上优化 LAMP(Linux + Apache + MySQL/MariaDB + PHP)环境,一般从系统层、Apache、MySQL、PHP、缓存与运维几个方面入手。下面给你一套实用、可落地的优化方案(适用于 Ubuntu 20.04/22.04)。


一、系统层优化

1. 更新系统与内核

sudo apt update && sudo apt upgrade -y

保持内核与安全补丁最新。

2. 调整 Swappiness

减少 swap 使用,提升性能:

sudo sysctl vm.swappiness=10

永久生效:

echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf

3. 文件描述符限制

sudo nano /etc/security/limits.conf

添加:

* soft nofile 65535
* hard nofile 65535

二、Apache 优化

1. 选择合适的 MPM

查看当前 MPM:

apache2ctl -V | grep MPM
  • 动态站点:prefork
  • 高性能 / PHP-FPM:event(推荐)

切换到 event:

sudo a2dismod mpm_prefork
sudo a2enmod mpm_event
sudo systemctl restart apache2

2. 配合 PHP-FPM(强烈推荐)

sudo apt install php-fpm
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php-fpm
sudo systemctl restart apache2

3. 调整 Apache 配置

编辑:

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

示例:

StartServers             2
MinSpareThreads         25
MaxSpareThreads         75
ThreadLimit             64
ThreadsPerChild         25
MaxRequestWorkers       150
MaxConnectionsPerChild  3000

4. 开启 gzip 压缩

sudo a2enmod deflate

在配置中加入:

AddOutputFilterByType DEFLATE text/html text/css application/javascript

5. 开启浏览器缓存

sudo a2enmod expires
ExpiresActive On
ExpiresByType image/jpg "access plus 1 month"
ExpiresByType text/css "access plus 1 week"

三、MySQL / MariaDB 优化

1. 使用 mysqltuner

sudo apt install mysqltuner
mysqltuner

按建议调整。

2. 常见优化参数

编辑:

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

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

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

MySQL 8 已移除 query cache

3. 慢查询日志

slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow.log
long_query_time = 1

四、PHP 优化

1. 使用 OPcache

sudo apt install php-opcache

php.ini 中:

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

2. PHP-FPM 配置

sudo nano /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

五、缓存与加速

1. Redis(推荐)

sudo apt install redis-server
sudo apt install php-redis

用于 session / 应用缓存。

2. 静态资源分离

  • 图片 / JS / CSS 放 CDN
  • Apache 只处理动态请求

六、安全与运维

  • 启用 UFW:
sudo ufw allow OpenSSH
sudo ufw allow 80,443/tcp
sudo ufw enable
  • 定期清理日志
  • 使用 htop, iotop, netdata 监控

七、简单性能测试

ab -n 1000 -c 100 http://your-site.com/

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

  • Ubuntu 版本
  • 内存大小
  • 网站类型(WordPress / 自建 PHP / API)

我可以直接给你一份可直接用的配置。

0 踩