zoukankan      html  css  js  c++  java
  • 记一次vue发版,在nginx下不乱码,在IIS下乱码的奇葩经历

    题记 : 你不逼自己一把,你永远不知道自己有多傻逼

    事情是这样婶儿滴,公司最近碰上了离职潮,导致前端、后端大量离职,只能逼自己去写写VUE了。

    问题的诞生

    写了一个h5的项目,本地运行无问题,使用node serve 来运行也无问题,于是打包发布,放在测试环境上,也无问题,经过审核之后,提前上线了,此时问题来了。 项目标题 乱码,项目 部分内容乱码

    问题排查

    1. 在最终上线之前,我将vconsole从引用js 的方式更替为了 plugin 插件,于是就想是不是这个问题,卸载了无济于事
    2. 再次发布方在测试环境上没有乱码,此时,想到测试是 nginx 线上是 iis,猜测是不是这个问题,经过测试与本地使用iis,确定了在IIS中才会有问题
    3. 确定是iis问题后,开始疯狂查找iis配置问题,一边骂XX,因为处理ftp权限,其他的啥也看不到,更别提配置iis;但在本地iis环境中,如何配置,都不能解决乱码问题
    4. 陷入崩溃的 6小时
    5. 打包项目,更换项目环境 为 development, 发布到本地iis中,竟然不乱码了!!!! (T_T)~~ 泪目~~ 好似看到了曙光
    6. 认真审视打包后的项目,发现index.html 有两个head :一个是生成包含js 和css 的head ,一个是你自己写的head 但是尾巴head 套到了最后!【找到了】

    回过头来分析

    为啥在iis中有问题,node serve 、nginx 都没有问题呢?暂时归类为,iis要求更加严格;
    为啥乱码呢? 打开打包后的js,有一个文件编码格式GBK,不同的环境打包后,js加载的顺序不一样 development 是从0 开始, 而production 环境是随机码;
    为啥部分乱码? 因为在index.html中自己写的head被放在了下面,也导致了 <meta charset="utf-8" /> 到了下面,加载的时候,页面dom刷新,就在第二个head的作用下了,所以只有 第二个head里 meta标签之前的html内容、被动页面增加的div才会出现乱码。
  • 相关阅读:
    Visual C# 2005中编写Socket网络程序
    [ASP.NET缓存BUG]这几天遇到的头痛问题之一,晚上遇到终于解决一劳永逸
    检测远程URL是否存在的三种方法<转>
    C#开源资源大汇总
    Asp.Net中动态页面转静态页面
    开发人员必进的网站
    基于反向代理的Web缓存加速——可缓存的CMS系统设计
    解决MVC3 服务器无法在已发送 HTTP 标头之后设置状态 问题
    HyperLink 控件控制图片宽度高度的几种方法
    C#进程注入
  • 原文地址:https://www.cnblogs.com/akashicbrother/p/14752456.html
Copyright © 2011-2022 走看看