Perl开源软件sql-ledger迁移至新系统后非英文字符乱码问题求助
Perl开源软件sql-ledger迁移至新系统后非英文字符乱码问题求助
我已经使用Perl编写的开源软件sql-ledger很多年了,一直是在CentOS 7上自建部署。现在因为一些原因,需要把操作系统升级到更高版本(优先考虑Rocky/Alma 9)。
我在新的Alma 9系统上安装了Apache和PostgreSQL 13,把所有数据和软件都迁移过去了,但遇到了非英文字符显示乱码的问题,试了各种方法都没法解决。
下面是我已经做过的排查和尝试:
- 把软件留在CentOS 7,数据库放在新系统上,一切正常
- 检查了软件的所有文本文件,编码都是UTF-8
- 数据库编码也是UTF-8,用Adminer查看所有数据都显示正常
- 试过安装Rocky/Alma 8和Ubuntu 22.04,问题依然存在
- 更换过多个版本的PostgreSQL,问题还是没解决
- 页面源码里已经声明了字符编码为UTF-8
- 平时用Firefox,也试过其他浏览器,乱码问题依旧
- 所有新系统都配置了所需的UTF-8 locale
目前对我来说唯一可行的方案就是把软件文件留在CentOS 7上,不管数据库放在哪里。
我现在已经绞尽脑汁了,完全卡在这里不得不继续用CentOS 7,希望能得到大家的帮助,谢谢!
备注:内容来源于stack exchange,提问作者sse450




