请教一下, web 项目部署在 vps 上 js 乱码(仅 js)是为啥?

2017-09-08 13:31:33 +08:00
 Cover123

maven 导出 war 包,部署在腾讯云下 tomcat,通过浏览器访问出现引入的 js 文件中文乱码。

经测试

  1. 在本地电脑经 eclipse 启动 tomcat 部署项目,浏览器访问 js 正常
  2. 在本地电脑直接使用 tomcat 部署项目,浏览器访问 js 正常

仅在服务器 tomcat 下部署出现通过浏览器访问 js 中文乱码问题。(在 webapp 下查看 js 文件,并没有乱码)

另尝试过解决办法:

  1. 引入 js 时加上 charset="utf-8"
  2. tomcat 加上 URIEncoding="UTF-8"
  3. tomcat 的 catalina.bat 加上 set JAVA_OPTS utf-8 都没有成功解决。。

js 格式为 utf-8 无 bom 格式.服务器为 windows service 2012 R2

2842 次点击
所在节点    程序员
11 条回复
Cover123
2017-09-08 14:11:34 +08:00
感觉比较奇怪的是,相同的部署在本地 tomcat 和服务器 tomcat,为什么仅服务器这边出现 js 乱码。。

刚才将 js 格式改为 utf-8 带 bom 头的,竟然就没有了乱码的问题。(不是应该不带 bom 头吗)
特来求助!谢谢
Cover123
2017-09-08 16:37:35 +08:00
哎。要石沉大海了。。
zhilincom
2017-09-09 01:08:06 +08:00
用的是 Tomcat7 吗?
WordTian
2017-09-09 05:16:49 +08:00
vps 如果是 linux 的话,默认的文档格式是 utf-8,而 web 开发环境一般是 window,是 ASCII,当你换了环境,这就有冲突了
Cover123
2017-09-09 09:47:57 +08:00
@zhilincom 用的 tomcat9
Cover123
2017-09-09 09:49:06 +08:00
@WordTian vps 是 windows service 2012R2 本机 win7 感觉两个环境并没有啥区别 T,T
lukunlin
2017-09-09 11:33:44 +08:00
现在还有几个那么多企业用 window service ?
Cover123
2017-09-09 11:54:29 +08:00
@lukunlin 并非企业,目前学生,自己练手项目。。
LokiSharp
2017-09-09 12:46:13 +08:00
http 头里声明一下编码吧
Cover123
2017-09-09 13:36:25 +08:00
@LokiSharp 该声明的全声明了。。文件格式也都是 utf-8 不带 bom
pynix
2017-09-10 00:04:09 +08:00
大概是 locale 的问题吧。。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/389180

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX