Laravel Jetstream Livewire Vite部署Cpanel时Vite清单资源找不到报错
Laravel部署Cpanel时Vite资源找不到的解决办法
核心原因
这个错误本质是Vite的生产构建产物未生成或未被正确识别,和你本地未执行npm run build时的报错逻辑一致——服务器找不到编译后的静态资源对应的manifest记录。
解决步骤
必须执行生产构建
在本地项目根目录运行npm run build,完成后会在public/build目录生成manifest.json和编译好的css/js文件。部署时要把这个build目录同步到Cpanel服务器的对应位置。如果服务器支持node环境,也可以直接在服务器上执行npm install && npm run build(前提是先上传所有项目文件)。核对Vite配置路径
打开vite.config.js,确认input数组里的资源路径和实际文件完全匹配,比如: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, }), ], });路径拼写错误会导致构建时无法生成对应资源。
检查服务器静态资源目录
登录Cpanel查看项目的public/build目录是否存在,里面是否有app.css、app.js以及manifest.json。如果缺失,要么是部署时漏传了这个目录,要么是构建失败,需要重新构建后上传。确认模板资源引入方式
确保Blade模板里用Vite官方的引入语法,不要混用旧的资源加载方法:@vite(['resources/css/app.css', 'resources/js/app.js'])旧的
asset()或mix()方法无法正确解析Vite的构建产物路径。清除Laravel缓存
在服务器上执行以下命令清除缓存,避免旧配置干扰:php artisan cache:clear php artisan config:clear php artisan view:clear
内容的提问来源于stack exchange,提问作者LeMajestie
相关产品推荐
相关产品推荐

