3***@qq.com
3***@qq.com
  • 发布:2022-06-21 18:20
  • 更新:2022-07-29 17:01
  • 阅读:1112

uniapp打包h5文件名过长,服务器路径中间显示 ... 无法识别

分类:uni-app

放在Linux 上 nginx反向代理 , 过长的文件名无法显示,直接404 ,是怎么回事 , 如何修改,谢谢了各位大神

2022-06-21 18:20 负责人:无 分享
已邀请:
DCloud_UNI_CHB

DCloud_UNI_CHB

因为目录太深导致的?你调整下目录结构,让文件名变短一些。

  • 3***@qq.com (作者)

    是的,文件名太长代理的时候中间就变成了 ... 我看了一下文件名的结构 ,大致就是互相引用的时候都会把相互引用的文件名都加进去 , 如果打包的时候想vue的那种将静态文件名全都md5加密一下,然后在关联, 这样就有效的解决了

    2022-06-23 17:53

q***@qq.com

q***@qq.com

有什么办法解决吗?

4***@qq.com

4***@qq.com

// 如下修改output.filename 和chunkFilename后,那些文件夹嵌套深的    
// 打包出来的文件名称,明显变短    
module.exports = {    
  chainWebpack(config) {    
   config.when(process.env.NODE_ENV === "production", config => {    
       config.output    
        .filename("static/js/[name]-[contenthash].js")    
        .chunkFilename("static/js/[id]-[chunkhash].js");    

       config.optimization.splitChunks({    
         name: function(module, chunks, cacheGroupKey) {    
            const moduleFileName = module    
                        .identifier()    
                        .split('/')    
                        .reduceRight((item) => item);    
                    const allChunksNames = chunks.map((item) => item.name).join('~');    
                    return `${moduleFileName}`;    
                },    
        })    
     }    
  }    
}

该问题目前已经被锁定, 无法添加新回复