Vue打包部署到服务器-找不到静态资源404错误
Vue打包部署到服务器-找不到静态资源404错误
参考:https://blog.csdn.net/AnnaF/article/details/105709569
问题描述
在本地运行正常,但是使用npm run build 上传服务器就总是报找不到静态资源。

原因
打包后的资源使用的是绝对路径,导致静态资源无法被找到。
解决办法
(1)更改config文件夹下index.js(config -> index.js -> build对象)资源发布路径:
// An highlighted block
 build: {
    // Template for index.html
    index: path.resolve(__dirname, '../dist/index.html'),
    // Paths
    assetsRoot: path.resolve(__dirname, '../dist'),
    assetsSubDirectory: 'static',
    assetsPublicPath: './',  // 修改为'./'
      /**
     * Source Maps
     */
    productionSourceMap: true,
    // https://webpack.js.org/configuration/devtool/#production
    devtool: '#source-map',
(2)更改build文件夹下的utils.js代码
// An highlighted block
 if (options.extract) {
    return ExtractTextPlugin.extract({
      use: loaders,
      fallback: 'vue-style-loader',
      publicPath:'../../' // 修改为'../../'
    })
  } else {
    return ['vue-style-loader'].concat(loaders)
  }
 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号