Ubuntu系统Laravel依赖如何管理
小樊
32
2025-12-28 08:47:53
Ubuntu 下 Laravel 依赖管理实践
一 核心工具与环境准备
- 使用 Composer 管理 PHP 依赖,是 Laravel 的依赖管理核心。
- 安装 Composer(全局可用):
- curl -sS https://getcomposer.org/installer | php
- sudo mv composer.phar /usr/local/bin/composer
- 验证:composer --version
- 安装并校验 PHP(示例为 PHP 8.1+):
- php -v
- 常见扩展:mbstring、openssl、pdo_mysql、tokenizer、xml、gd、bcmath、curl、zip(按需安装)
- Ubuntu 安装示例:sudo apt install php php-cli php-fpm php-json php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-bcmath
- Web 与数据库:选择 Nginx/Apache 作为 Web 服务器,数据库如 MySQL/PostgreSQL 按需安装与配置。
二 项目依赖的常用操作
- 创建新项目:composer create-project --prefer-dist laravel/laravel project-name
- 安装现有项目依赖:composer install(读取 composer.json 并安装)
- 新增依赖:composer require vendor/package
- 移除依赖:composer remove vendor/package
- 更新依赖:composer update(遵循 composer.json 的版本约束)
- 版本约束建议:优先使用明确的 版本号/范围,减少冲突;遇到冲突时先在 composer.json 调整版本,再执行 composer update。
三 生产环境与部署要点
- 安装生产依赖(不含 dev 包):composer install --optimize-autoloader --no-dev
- 生成应用密钥:php artisan key:generate
- 配置环境:复制 .env.example 为 .env 并填写数据库等敏感配置;确保 .env 纳入版本控制忽略
- 缓存优化(生产推荐):php artisan config:cache、php artisan route:cache、php artisan view:cache
- 文件权限:确保 storage 与 bootstrap/cache 对 Web 服务用户(如 www-data)可写
- sudo chown -R www-data:www-data /path/to/project
- sudo chmod -R 775 /path/to/project/storage /path/to/project/bootstrap/cache
- Web 服务器指向:将 root 指向项目的 public 目录,并正确配置 PHP-FPM/FastCGI。
四 常见问题快速排查
- Composer 版本过旧:执行 composer self-update;Laravel 8.x 及以上建议使用 Composer 2.x
- 依赖冲突:编辑 composer.json 调整版本约束后执行 composer update
- 下载失败/缓存异常:composer clear-cache 后重试
- 内存不足:php -d memory_limit=-1 /usr/bin/composer install(或临时提高 php.ini 的 memory_limit)
- 扩展缺失:使用 apt 安装对应 PHP 扩展,并在 php.ini 中启用,重启 PHP-FPM/Apache/Nginx
- 权限错误:确认 storage、bootstrap/cache 归属 www-data 且权限为 775,避免使用 777
- 路由 404:检查 Web 服务器配置 root 是否指向 public,以及 try_files 是否转发到 index.php
- 查看日志:storage/logs/laravel.log 与 Web 服务器错误日志可快速定位问题。