Laravel项目部署至Vercel后样式失效问题求助
Laravel部署Vercel后样式失效的解决方案
检查静态资源路径配置
本地与Vercel线上环境的资源路径存在差异,需确保路径配置准确:- 在
.env文件中设置APP_URL为Vercel分配的域名,部署时同步该环境变量到Vercel控制台; - 或在
config/app.php中固定配置:'url' => env('APP_URL', 'https://你的Vercel域名.vercel.app'); - 确认
mix-manifest.json(Mix)或build/manifest.json(Vite)已正确生成并提交到版本控制,部署前必须执行npm run prod(Mix)或npm run build(Vite)编译静态资源。
- 在
修正Vercel构建脚本
Vercel默认构建命令可能未包含前端资源编译步骤,需在vercel.json中配置完整流程:{ "buildCommand": "npm run prod && php artisan config:cache && php artisan view:cache", "devCommand": "php artisan serve" }若使用Vite,确保
package.json的scripts中包含正确构建命令:"build": "vite build"。处理缓存不一致问题
本地与线上缓存可能冲突,在构建命令中加入缓存清理步骤,确保线上使用最新配置和视图:- 执行
php artisan config:cache清除配置缓存; - 执行
php artisan view:cache清除视图缓存; - 部署后仍有问题,可通过Vercel控制台手动执行上述命令。
- 执行
检查Vite/Mix配置
若使用Vite,确认vite.config.js资源路径配置正确:export default defineConfig({ plugins: [laravel()], resolve: { alias: { '@': '/resources/js', }, }, });确保构建后的静态资源输出到
public目录,Vercel可直接访问该目录文件。
内容的提问来源于stack exchange,提问作者zakaria nassri
相关产品推荐
相关产品推荐

