t***@163.com
t***@163.com
  • 发布:2023-09-30 23:49
  • 更新:2024-01-11 19:15
  • 阅读:2151

发布h5时,生成为“index.97465e7b.css”文件无法加载,请问是啥原因?

分类:uni-app

发布网络pc-web或手机H5时,生成的css文件名为:index.97465e7b.css,打开网页时,没有办加载该css文件。就算在宝塔里面直接下载都没有办法下载。通过修改文件名来验证该问题,修改该文件名后,即可以下载,并且网页可以加载成功。请问发布编译生成的hash文件名,是否可以修改,目前本机HbuilderX发布的h5都是index.97465e7b.css不变,偏偏该文件名又不可以加载。

HbuilderX版本:3.8.12.20230817
操作系统: MacOS Bug Sur 11.6.5 (20G527)

2023-09-30 23:49 负责人:无 分享
已邀请:

最佳回复

DCloud_UNI_OttoJi

DCloud_UNI_OttoJi - 日常回复 uni-app/x 问题,如果艾特我没看到,请主动私信

提供的信息不全,无法复现。后续遇到相似问题的用户,请提供测试工程。这可能涉及国内云厂商针对香港服务器设置了网络黑名单的问题。绕过方案请参考 2023-11-27 14:58 的评论和下面的评论

本帖先 lock,有相似问题请新开贴进行沟通

update:
update:
之前解决方案中我提到,后续对 vue2 的基础样式进行调整,就能规避这个问题了。

说来也巧,最近基础样式库修改过一次,后续不会遇到这个 hash 了。
如果你遇到这个问题,更新最新版本的依赖就行

npx @dcloudio/uvm@latest
之后重新编译 h5 应该就看不到这个 hash 了。

  • DCloud_UNI_OttoJi

    比如,这里的某个 css 里原本是 .abc{} 的样式,我们改成 body .abc{}

    比如 .abc{} 的样式,补充一个 .abc {/* 占位注释 /}

    这样绕过产生不同的 content-hash 。如果不涉及业务,请私聊我。

    2024-01-06 11:00

9***@qq.com

9***@qq.com

我遇到了同样的情况,也是测试了不可以下载,只要换个名字就可以下载,求解~

  • t***@163.com (作者)

    在我看来,这个HBuilderX的问题太多了。

    2023-10-03 13:38

  • 9***@qq.com

    回复 t***@163.com: 但是有一点很奇怪,在本地的虚拟机中就正常

    2023-10-03 22:04

  • DCloud_UNI_OttoJi

    回复 t***@163.com: 看这个 https://ask.dcloud.net.cn/question/184726

    2024-01-11 19:21

  • DCloud_UNI_OttoJi

    回复 9***@qq.com: https://ask.dcloud.net.cn/question/184726

    2024-01-11 19:22

飞飞吕

飞飞吕 - 个人站(www.feifeilv.top)微:l1209559047

原来不止我一个人这个问题啊 我试了 使用vue.config 自定义文件名 这个css文件名没变化

  • DCloud_UNI_OttoJi

    看这个 https://ask.dcloud.net.cn/question/184726

    2024-01-11 19:22

2***@qq.com

2***@qq.com

同样问题,改名就好了。有没有不改名的解决方案

  • DCloud_UNI_OttoJi

    看这个 https://ask.dcloud.net.cn/question/184726

    2024-01-11 19:22

7***@qq.com

7***@qq.com

同样遇到,index.97465e7b.css 这个css 会导致,访问网站时候提示链接被重置,并且网站的其他链接都无法打开。
目前多个服务器仅在一个服务器上复现,其他服务器上的同样文件正常

  • DCloud_UNI_OttoJi

    看这个 https://ask.dcloud.net.cn/question/184726

    2024-01-11 19:22

6***@qq.com

6***@qq.com

大家报一下环境,看看有没有共性,这个问题太奇葩了。好像是针对文件名做了拦截。

我的是腾讯云香港服务器,php7.1,宝塔7.6.0,未配置防火墙,伪静态是tp默认(清空也没有用),

这只是一个静态的css文件,我感觉问题大概率出在腾讯云上,也可能是宝塔的问题。大家看看都用的哪的服务器,什么环境。

这个文件名生成的时候不能修改,项目做好无法上线,真的很郁闷

3***@qq.com

3***@qq.com

官方还没解决吗?我也遇到这个问题

  • DCloud_UNI_OttoJi

    看这个 https://ask.dcloud.net.cn/question/184726

    2024-01-11 19:22

4***@qq.com

4***@qq.com

同样的问题,用HBuilderX 3.8.12 打包h5部署在腾讯云的香港服务器,无法加载这个css。

  • DCloud_UNI_OttoJi

    看这个 https://ask.dcloud.net.cn/question/184726

    2024-01-11 19:22

2***@qq.com

2***@qq.com

HBuilderX 3.9.6打包h5部署也碰到这个问题了,改名就解决了,太奇葩了!!

  • DCloud_UNI_OttoJi

    看这个 https://ask.dcloud.net.cn/question/184726

    2024-01-11 19:22

5***@qq.com

5***@qq.com

原来大家都有这个问题

  • 5***@qq.com

    切换旧版本HBuilderX3.7.9 就生成随机的CSS 文件就没问题

    2023-11-15 18:49

  • DCloud_UNI_OttoJi

    看这个 https://ask.dcloud.net.cn/question/184726

    2024-01-11 19:22

涛少

涛少

我也遇到打包h5后,遇到加载js失败的问题,也没有官方出来处理

  • DCloud_UNI_OttoJi

    看这个 https://ask.dcloud.net.cn/question/184726

    2024-01-11 19:22

2***@qq.com

2***@qq.com

手动改名字吧

  • DCloud_UNI_OttoJi

    看这个 https://ask.dcloud.net.cn/question/184726

    2024-01-11 19:22

2***@qq.com

2***@qq.com

public 里面的
<link rel="stylesheet" href="<%= BASE_URL %>static/index.<%= VUE_APP_INDEX_CSS_HASH %>.css" />

懒得找了,可能是BUG

uni.config.js


  copyWebpackOptions (platformOptions, vueOptions) {  
    const copyOptions = [  
      {  
        from: require.resolve('@dcloudio/uni-h5/dist/index.css'),  
        to: getIndexCssPath(vueOptions.assetsDir, platformOptions.template, 'VUE_APP_INDEX_CSS_HASH'),  
        transform (content) {  
          return transform(content, platformOptions)  
        }  
      },  
      'hybrid/html'  
    ]  
    global.uniModules.forEach(module => {  
      copyOptions.push('uni_modules/' + module + '/hybrid/html')  
    })  

    return copyOptions  
  }  
  • DCloud_UNI_OttoJi

    看这个 https://ask.dcloud.net.cn/question/184726

    2024-01-11 19:23

DCloud_UNI_OttoJi

DCloud_UNI_OttoJi - 日常回复 uni-app/x 问题,如果艾特我没看到,请主动私信

谁可以提供一个测试工程,来跟进此问题?

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