mysqldump或pg_dump),防止更新过程中出现兼容性问题导致数据丢失。sudo apt update && sudo apt upgrade -y
composer self-update
/var/www/html/my-laravel-project):cd /path/to/your/laravel/project
composer update,Composer会根据composer.json更新所有依赖至兼容的最新版本。composer update laravel/framework,避免不必要的依赖变动。composer.json中的版本约束(如将"illuminate/support": "^9.0"改为"^10.0"),再重新运行composer update。php artisan config:clear
php artisan route:clear
php artisan view:clear
php artisan cache:clear
php artisan migrate
若有数据填充需求(如新增种子数据),运行:php artisan db:seed
composer outdated查看过时的依赖,及时更新至稳定版本。enlightn/security-checker扫描项目依赖的安全漏洞:composer require --dev enlightn/security-checker
php artisan security:check
.env中设置APP_URL=https://yourdomain.com,并创建强制跳转中间件(如ForceHttps),确保所有流量通过HTTPS传输。ContentSecurityPolicy),限制资源加载来源,防御XSS攻击。ufw允许HTTP(80)、HTTPS(443)和SSH(22)端口,限制入站流量:sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 22/tcp
sudo ufw enable
/etc/ssh/sshd_config,禁用root远程登录(PermitRootLogin no),使用SSH密钥对认证。git add .
git commit -m "Update Laravel to version x.y.z and dependencies"
git push origin main
git pull origin maincomposer install而非update,确保composer.lock文件一致):composer install --no-dev --optimize-autoloader
php artisan config:clear
php artisan queue:restart
通过以上流程,可确保Debian系统上的Laravel项目保持最新状态,同时兼顾安全性和稳定性。更新过程中需特别注意依赖冲突和测试环节,避免因更新导致应用中断。