巴拉巴拉
小魔仙

Tomcat配置SSL遇到UTF-8的问题

tomcat配置ssl网上有很多的配置教程,tomcat配置utf-8的教程更多,

以前都用的nginx配置ssl,所以没有碰过这个问题,今天踩坑.

但是今天遇到了一个奇怪的问题,那就是配置ssl的时候碰到了UTF-8的问题

理论上我们已经在配置了UTF-8,和网上的配置说明都一致

<Connector port="8080" protocol="HTTP/1.1"
    connectionTimeout="20000"
    redirectPort="443" URIEncoding="UTF-8" />

之后配置SSL

<Connector SSLEnabled="true" acceptCount="100" clientAuth="false"
          disableUploadTimeout="true" enableLookups="false" maxThreads="25"
          port="443" keystoreFile="/home/tomcat/xxxx.jks" keystorePass="xxxx"
          protocol="org.apache.coyote.http11.Http11NioProtocol" scheme="https"
          secure="true" sslProtocol="TLS"/>

唯一的问题就是UTF-8,正常情况下,走8080端口是正常的,但是在443端口下却重新乱码了

乱码结果一样是utf-8iso8859-1

修改配置:

<Connector SSLEnabled="true" acceptCount="100" clientAuth="false"
          disableUploadTimeout="true" enableLookups="false" maxThreads="25"
          port="443" keystoreFile="/home/tomcat/xxxx.jks" keystorePass="xxxx"
          protocol="org.apache.coyote.http11.Http11NioProtocol" scheme="https"
          secure="true" sslProtocol="TLS" URIEncoding="UTF-8" />

结论:tomcat当中 redirectPort="443" 直接将请求丢给了443端口,但是没有做字符集处理

需要自己在配置443端口的地方配置

赞(0) 打赏
如果文章对你有帮助,欢迎你来评价反馈。AgainFly » Tomcat配置SSL遇到UTF-8的问题

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  • Q Q(选填)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏