You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修复Laravel项目中Vite manifest.json文件位置异常问题

解决Laravel Vite构建后manifest.json路径不符问题

问题原因

升级Node包后,新版laravel-vite-plugin在生产构建时,默认将manifest.json输出到public/build/.vite/目录下,但Laravel的资源加载助手默认从public/build/manifest.json读取配置,导致路径不匹配触发报错。

解决方案

在vite.config.js的laravel插件配置中,显式指定manifest的输出位置,让其直接生成在build根目录下:

修改后的vite.config.js关键配置片段:

plugins: [
    laravel({
      input: ['resources/sass/app.scss', 'resources/js/app.js'],
      refresh: [
        {
          paths: ['resources'],
        },
      ],
      // 新增配置:指定manifest输出到build根目录
      manifest: 'manifest.json',
    }),
  ],

如果需要保留自定义的Rollup输出规则,也可以在build配置块中明确设置manifest路径:

build: {
    chunkSizeWarningLimit: 1000,
    // 显式指定manifest输出文件名
    manifest: 'manifest.json',
    rollupOptions: {
      output: {
        assetFileNames: (assetInfo) => {
          let extType = assetInfo.name.split('.').pop();

          if (/png|jpe?g|svg|gif|webp|tiff|bmp|ico/i.test(extType)) {
            extType = 'images';
          } 
          else if (/woff|woff2/.test(extType)) {
            extType = 'css';
          }

          return `${extType}/[name]-[hash][extname]`;
        },
        chunkFileNames: 'js/[name]-[hash].js',
        entryFileNames: 'js/[name]-[hash].js',
      },
    },
  },

验证步骤

  • 执行生产构建命令:yarn build
  • 检查public/build/目录下是否生成了manifest.json
  • 启动Laravel应用,确认资源加载正常,不再出现找不到manifest的报错

补充说明

  • 开发环境(yarn dev)不依赖manifest文件,因此不会触发该问题
  • 该问题源于laravel-vite-plugin版本更新后的默认行为变更,显式指定manifest路径即可适配Laravel的资源加载逻辑

内容的提问来源于stack exchange,提问作者tij lip0018

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 10:17:25