Debian PHP 部署实用技巧
一 基础部署与版本选择
sudo apt update && sudo apt install php8.2 php8.2-fpm php8.2-mysql php8.2-curl php8.2-gd php8.2-mbstring php8.2-xml php8.2-zip php8.2-opcache。location ~ \.php$ 使用 Unix 套接字(如 /var/run/php/php8.2-fpm.sock),并包含 fastcgi_params 与 SCRIPT_FILENAME。a2enmod php8.2),按需启用 rewrite。info.php(<?php phpinfo(); ?>),访问确认解析与模块加载正常。二 性能优化与关键参数
opcache.enable=1,opcache.memory_consumption=128,opcache.interned_strings_buffer=8,opcache.max_accelerated_files=4000,opcache.revalidate_freq=60,可显著提升响应速度。php.ini 基础参数:memory_limit=256M、upload_max_filesize=50M、post_max_size=50M、max_execution_time=300、date.timezone=Europe/Paris(按业务调整)。gzip on; gzip_comp_level 6; gzip_min_length 256; gzip_vary on;location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ { expires 30d; add_header Cache-Control "public, no-transform"; }mod_deflate 与 mod_expires 做压缩与过期控制。三 安全加固与权限管理
apt update/upgrade,仅启用必要的 PHP 扩展,减少攻击面。php.ini 中限制危险函数(如 disable_functions=exec,system,passthru,shell_exec,proc_open,popen 等),并关闭显示错误(生产环境 display_errors=Off,开发环境再开启)。sudo ufw allow 'Nginx Full' 或 sudo ufw allow 'Apache Full')。四 自动化部署与持续交付
git pull 或克隆;后端依赖用 Composer 安装(composer install --no-interaction --prefer-dist)。git 模块、shell 执行 Composer、service 重启服务,便于一键复用与扩展。五 调试与运维监控
zend_extension=xdebug.so、xdebug.mode=debug、xdebug.client_host=127.0.0.1、xdebug.client_port=9003,配合 IDE(如 VS Code)进行断点调试。tail -f /var/log/nginx/error.log),Nginx 配置变更前执行 nginx -t 做语法校验。