Hansanshi / mark-idea

一款私有云笔记,git + markdown
MIT License
237 stars 47 forks source link

中文乱码 #34

Closed keuin closed 2 years ago

keuin commented 3 years ago

笔记里如果写有中文,刷新页面后会变成乱码。

Java环境: openjdk version "16.0.2" 2021-07-20 OpenJDK Runtime Environment (build 16.0.2+7) OpenJDK 64-Bit Server VM (build 16.0.2+7, mixed mode)

系统是Archlinux,内核是5.14.6-arch1-1

Hansanshi commented 3 years ago

你发个截图来看看,按道理不应该问题的 demo网站也是跑在linux(不过是centos7 jdk8)中 也没出现什么乱码错误

你还可以F12打开网络页面 查看下接口响应有无问题

keuin commented 3 years ago

image

保存上述内容后,会有一个POST请求把文本传到服务器:

image

响应是success,但是在服务器上会被保存成ASCII问号:

image

忘记说了,我用了Nginx作为反向代理来提供SSL支持,无论是否用charset utf-8来强制指定编码为utf-8,都会出现这样的情况。

这是我的Nginx配置文件:

image

换成java8也是一样,版本是:

openjdk version "1.8.0_292"
OpenJDK Runtime Environment (build 1.8.0_292-b10)
OpenJDK 64-Bit Server VM (build 25.292-b10, mixed mode)

手动把Test.md编辑为utf-8编码的中文文件,再用网页打开,后端给出的响应的HTTP头没有带utf-8标识,浏览器仍然识别为乱码:

image

感觉问题可能出在我的Nginx配置上,不过页面UI里的中文显示均没有问题,我继续研究一下。