生产服务器上Vite资源仍指向localhost问题求助
解决Laravel Vite部署后资源显示本地链接的问题
先执行生产构建命令
部署前必须在本地或服务器上运行打包命令,生成生产环境可用的资源文件:npm run build执行后会在
public/build目录下生成构建好的静态资源,部署时要确保这个目录同步到生产服务器。检查环境变量配置
打开生产服务器的.env文件,确认以下配置正确:APP_ENV=production APP_URL=https://你的生产域名Vite会根据
APP_ENV判断运行环境,只有生产环境才会加载构建后的静态资源,开发环境才会指向本地的127.0.0.1:5173服务器。确认Vite配置文件
检查项目根目录的vite.config.js,确保基础路径配置符合部署场景:- 如果项目部署在域名根目录,默认配置即可;
- 如果部署在子目录(比如
https://example.com/my-app/),需要添加base配置:
import { defineConfig } from 'vite'; import laravel from 'laravel-vite-plugin'; export default defineConfig({ plugins: [ laravel({ input: ['resources/css/app.css', 'resources/js/app.js'], refresh: true, }), ], base: '/my-app/', });修改配置后要重新执行
npm run build更新资源。清理缓存
- 清理Laravel配置和视图缓存:
php artisan config:clear php artisan view:clear - 强制刷新浏览器缓存(按
Ctrl+Shift+R),避免页面加载旧的资源引用。
- 清理Laravel配置和视图缓存:
检查部署文件完整性
确认生产服务器上的public/build目录存在,且包含打包后的.css、.js文件和manifest.json。如果这个目录缺失,Laravel Vite会自动 fallback 到开发服务器地址。
内容的提问来源于stack exchange,提问作者Mahadi Saputra
相关产品推荐
相关产品推荐

