多年来我一直在使用用 perl 编写的 FOSS 软件(sql-ledger)。目前自行托管在 CentOS 7 上。出于某些原因,我需要将操作系统更新到更高版本(最好是 Rocky/Alma 9)。
安装了 Apache 和 Postgresql 13,将所有数据和软件转移到新的 Alma 9。
但是,非英文字符看起来乱码了。无论我做什么,都无法修复它。
以下是我所做的工作和发现:
- 如果软件在 CentOS 7 上,数据库在新操作系统上,一切正常。
- 检查了软件里的所有文本,全部都是UTF-8编码。
- 数据库的编码是 UTF-8。使用 Adminer 时,数据库中的所有数据看起来都很不错。
- 安装了 Rocky/Alma 8 和 Ubuntu 22.04,问题仍然存在。
- 尝试了许多不同版本的 PostgreSQL,问题仍然存在。
- 所服务页面的源代码声明 UTF-8 作为字符编码。
- 我通常使用 Firefox。尝试了其他浏览器,问题仍然存在。
- 所有新操作系统都具有必需的 UTF-8 语言环境。
对我来说唯一的解决方案是将软件文件放在 CentOS 7 上,而不管数据库位置在哪里。
我对这个问题束手无策。我被困在 CentOS 7 中。
我将不胜感激任何帮助。
谢谢