Laravel项目体积过大如何部署?新手咨询部署及文件上传问题
Laravel博客部署指南及Vendor/ClockWork文件夹处理建议
你的想法部分正确,下面分点说明细节:
Vendor文件夹
- 确实不需要直接上传到服务器,但不能完全忽略依赖安装步骤。Laravel的所有第三方依赖都存储在Vendor目录中,正确的做法是在服务器上通过Composer重新安装:
- 上传项目代码时排除Vendor、.env、node_modules等环境/临时文件夹
- 在服务器项目目录下执行命令:
composer install --optimize-autoloader --no-dev--no-dev参数会跳过开发环境依赖,适合生产环境--optimize-autoloader能优化类加载器,提升运行效率
- 这么做的原因:本地Vendor可能包含开发专用依赖,且不同操作系统(如本地Windows、服务器Linux)的依赖可能存在兼容性问题,服务器重新安装更稳妥。
ClockWork文件夹
ClockWork是开发阶段用的调试工具,生产环境完全不需要,可以直接排除在上传范围外。你也可以在本地将其从项目中移除,或者添加到.gitignore文件中,避免误提交到版本库。
Laravel部署基础步骤补充
- 上传项目核心代码(排除Vendor、.env、node_modules、storage/logs、bootstrap/cache等)
- 在服务器上复制
.env.example并重命名为.env,配置生产环境的数据库连接、APP_KEY、缓存驱动等参数 - 执行
php artisan key:generate生成新的应用密钥 - 执行
composer install --optimize-autoloader --no-dev安装生产环境依赖 - 执行
php artisan config:cache和php artisan route:cache优化配置与路由加载 - 给
storage和bootstrap/cache目录设置正确权限,确保服务器用户拥有读写权限,例如:chmod -R 755 storage bootstrap/cache - 配置Web服务器(Nginx或Apache),将网站根目录指向项目的
public文件夹,防止源码直接暴露
内容的提问来源于stack exchange,提问作者Rabotazen
相关产品推荐
相关产品推荐

