以下是Debian系统高效配置PHP的关键步骤,涵盖性能、扩展及安全优化:
更新系统与安装PHP
sudo apt update && sudo apt upgrade
sudo apt install php-fpm php-mysql php-gd php-curl php-mbstring # 根据需求安装扩展
推荐使用PHP-FPM(FastCGI进程管理器),提升并发处理能力。
配置PHP核心参数(php.ini)
memory_limit = 256M # 根据服务器内存调整
max_execution_time = 30 # 避免脚本长时间运行
upload_max_filesize = 10M # 限制上传文件大小
opcache.enable = 1 # 启用OPcache加速
opcache.memory_consumption = 128 # OPcache内存分配
opcache.max_accelerated_files = 10000 # 缓存文件数量
路径:/etc/php/8.x/fpm/php.ini(Nginx)或/etc/php/8.x/apache2/php.ini(Apache)。优化PHP-FPM进程管理
编辑/etc/php/8.x/fpm/pool.d/www.conf:
pm = dynamic
pm.max_children = 50 # 根据CPU核心数调整(建议:CPU核心数×2+1)
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 20
request_terminate_timeout = 30s # 防止慢请求占用资源
重启PHP-FPM生效:sudo systemctl restart php8.x-fpm。
启用OPcache
sudo apt install php-opcachephp.ini中已启用(见上文),并设置合理的缓存大小。使用缓存系统
sudo apt install php-redis # 或 php-memcached
在代码中使用缓存存储高频数据。优化Web服务器配置
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.x-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
静态资源添加缓存头,减少重复请求。安全加固
php.ini中设置disable_functions = exec,system。open_basedir限制PHP可访问的目录。sudo ufw allow 'Nginx Full',限制非必要端口。监控与日志
top/htop监控CPU/内存使用,vmstat查看系统负载。/var/log/php8.x-fpm.log,排查异常。php-xml(处理XML)、php-zip(压缩文件)等,避免冗余。注:配置需根据实际服务器资源(CPU/内存)和应用场景调整,建议通过压力测试(如ab或wrk)验证优化效果。
参考来源: