在 CentOS 上搭建的 LAMP(Linux + Apache + MySQL/MariaDB + PHP)环境,如果感觉访问慢、响应慢,可以从系统层、Web 层、数据库层、PHP 层、缓存层几个方向来加速。下面给你一套实用、可落地的优化方案。
一、系统层加速(基础)
1. 关闭无用服务
systemctl list-unit-files --type=service | grep enabled
关闭不必要的服务(如 postfix、cups 等)。
2. 调整文件描述符限制
vi /etc/security/limits.conf
添加:
* soft nofile 65535
* hard nofile 65535
3. 内核参数优化(TCP)
vi /etc/sysctl.conf
示例:
net.core.somaxconn = 65535
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 30
执行:
sysctl -p
二、Apache 加速
1. 使用合适的 MPM
推荐 event(PHP-FPM) 或 worker
查看:
httpd -V | grep MPM
编辑:
vi /etc/httpd/conf.modules.d/00-mpm.conf
启用:
LoadModule mpm_event_module modules/mod_mpm_event.so
2. 启用 KeepAlive(适度)
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5
3. 开启压缩
a2enmod deflate # CentOS 通常是已编译
或手动加载:
LoadModule deflate_module modules/mod_deflate.so
配置:
AddOutputFilterByType DEFLATE text/html text/css application/javascript
4. 禁用目录浏览
Options -Indexes
三、PHP 加速(非常重要)
1. 使用 PHP-FPM(强烈推荐)
yum install php-fpm
systemctl enable php-fpm
Apache 使用:
proxy:unix:/run/php-fpm/www.sock|fcgi://localhost
2. 安装 OPcache
yum install php-opcache
php.ini:
opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
3. 调整 PHP 参数
memory_limit = 256M
max_execution_time = 30
upload_max_filesize = 20M
四、MySQL / MariaDB 加速
1. 使用缓存型配置
编辑:
vi /etc/my.cnf.d/server.cnf
示例(2GB 内存):
innodb_buffer_pool_size = 1G
query_cache_size = 64M
query_cache_type = 1
2. 慢查询分析
SHOW VARIABLES LIKE 'slow_query%';
开启慢日志,优化 SQL。
3. 建立索引
避免 SELECT *,给常用查询字段加索引。
五、缓存层加速(效果最明显)
1. 安装 Redis / Memcached
yum install redis
systemctl start redis
PHP 使用:
yum install php-redis
2. 页面缓存(CMS 场景)
- WordPress → Redis Object Cache
- 自建系统 → 文件缓存 / Redis 缓存
3. 静态资源走 CDN
- JS / CSS / 图片放 CDN
- Apache 设置长缓存:
<FilesMatch "\.(js|css|png|jpg)$">
Header set Cache-Control "max-age=2592000"
六、其他实用技巧
- 使用 HTTP/2(需 HTTPS)
- 定期清理日志
- 使用
htop、iotop、mysqltuner排查瓶颈 - SSD 比 HDD 快 5–10 倍
七、快速自检命令
top
free -h
iostat -x 1
mysqltuner
ab -n 1000 -c 100 http://localhost/
如果你愿意,可以告诉我:
- CentOS 版本(7 / 8 / Stream)
- Apache + PHP 运行方式(mod_php / php-fpm)
- 是哪种网站(WordPress / 自研 / 商城)
我可以直接给你一份可复制的优化配置文件。