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

Vite3+Vue3+Laravel9项目服务器构建后页面报错排查求助

可能的原因及排查方向
  • 资源路径配置错误
    如果项目部署在服务器的非根目录下,Vite默认的base路径为/,会导致构建后的静态资源(JS/CSS/图片)加载路径错误。需在vite.config.js的defineConfig中添加对应base配置,比如部署在子路径下时:

    export default defineConfig({
      base: '/你的子路径/',
      // 其他原有配置...
    })
    

    同时确认Laravel的.env文件中APP_URL设置为服务器实际地址,比如http://intime.bestleasing.com.ua。

  • 环境变量不匹配
    开发模式(dev)与生产模式(build)的环境变量可能存在差异。检查服务器上的.env.production文件或直接设置的环境变量,确保所有VITE_开头的前端环境变量(如API地址)正确指向服务器实际接口,避免开发环境的本地地址被打包进生产代码。

  • Laravel模板资源引用错误
    确保Blade模板中使用@vite指令加载资源,而非硬编码路径。正确写法示例:

    @vite(['resources/sass/app.scss', 'resources/js/app.js'])
    

    不要手动写<script src="/build/app.js"></script>这类路径,因为构建后的资源文件名带有哈希值,Laravel会通过manifest.json自动匹配正确文件。

  • SPA路由 fallback 未配置
    若项目是单页应用(SPA),服务器需配置路由 fallback,确保所有非API请求都指向index.blade.php。在Laravel的routes/web.php中添加:

    Route::get('/{any}', function () {
        return view('welcome');
    })->where('any', '.*');
    

    否则刷新页面或直接访问子路由时会返回404错误。

  • 依赖兼容性或打包优化问题
    Vite 3.0.0与部分依赖可能存在兼容性问题,比如laravel-vite-plugin版本是否匹配Laravel 9。可尝试更新相关依赖:

    npm update laravel-vite-plugin @vitejs/plugin-vue
    

    另外检查代码中是否使用了仅在开发环境可用的API(如console.debug或dev专属插件),生产打包时可能被移除或报错。也可临时关闭Vite的压缩优化排查问题:

    build: {
      chunkSizeWarningLimit: 1600,
      minify: false
    }
    
  • 服务器权限问题
    确保服务器上public/build目录的权限正确,Web服务器(Nginx/Apache)拥有该目录下文件的读取权限,否则会导致静态资源加载失败。

内容的提问来源于stack exchange,提问作者Artem Mazurenko

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 04:15:39