问题处理基本功:Tomcat8部署项目加载静态资源html页面编码错误

1.问题背景及解决方式

最近在回顾Tomcat部署Web项目,自己简单地从Tomcat的下载安装及配置server.xml文件入手,学习Tomcat的项目部署,在自己使用IDEA创建了一个简单地web项目,并尝试将项目复制到Tomcat的安装运行目录下:.\apache-tomcat-8.5.50\webapps中,使用这种简单地拖放式管理来验证我项目的部署是否能被Tomcat服务器带动并访问,于是我创建了一个oa命名的项目,访问hello.html页面,项目如下:

在这里插入图片描述

.html文件是IDEA自动生成的HTML4文件格式,在当中我添加了与中的标签页。

创建好oa项目之后,我将此项目存放在我Tomcat的webapps目录下托管:

在这里插入图片描述

我在Tomcat的安装bin目录中点击startup.bat运行项目之后,在google浏览器中打开并访问我的hello.html页面,尴尬的一幕发生了,页面显示出现了乱码:

在这里插入图片描述

于是在网上找了一些解决方案,最终自己解决了这个问题,感谢CSDN博客博主经验分享:

https://blog.csdn.net/jjarchu/article/details/89575277,本文的问题基于该博客做参考,并结合自己实际的问题背景进行问题总结。

具体解决方案如下:

① 首先,我在Tomcat配置文件server.xml中的启动默认端口8080与重定向端口8443处添加了:URIEncoding=“UTF-8” ;

在这里插入图片描述

在这里插入图片描述

这个因为原来默认的Tomcat8的server.xml文件中是没有添加这个”UTF-8”的编码的,但是很多地方web访问的话都需要,所以直接加上,但是添加之后重启startup.bat继续访问页面,发现问题并没有得到解决,依然是这个错误编码页面:

在这里插入图片描述

② 之后我借鉴了博文中的第一点,修改了我本来hello.html中的H4页面配置,添加了:

之后,再次重启Tomcat并访问页面,问题得到解决:

2.问题解决方案总结

这里来总结一下Tomcat访问静态资源如.html、.jsp文件容易遇到的编码问题的解决方法,汇总一下,便于查询:

1.方式一:

在原本的.html文件中添加:

2.方式二:

在Tomcat8的安装目录server.xml中的启动默认端口8080与重定向端口8443处添加了:URIEncoding=“UTF-8” ;

在这里插入图片描述

3.方式三:

在web.xml文件中设置编码:

<mime-mapping>
<extension>htm</extension>
<mime-type>text/html;charset=UTF-8</mime-type>
</mime-mapping>
<mime-mapping>
<extension>html</extension>
<mime-type>text/html;charset=UTF-8</mime-type>
</mime-mapping>

4.方式四:

如果是IDE启动,设置启动参数 Debug configurations->tomat 8.0->argument

-Dfile.encoding=UTF8;

如果是Tomcat服务形式启动,设置catalina.bat

set “JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%” -Dfile.encoding=UTF8

5.方式五:

将文件用记事本或者EditPlus打开,另存为UTF-8格式

本文转载自:
https://www.cnblogs.com/yif0118/p/12245306.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值