Flask-Babel 不会在 docker 容器内翻译 AWS 上的文本,但会在本地翻译

Flask-Babel won't translate text on AWS within a docker container, but does locally

我有一个使用 flask-babel 翻译文本的 flask 应用程序。我已经为它创建了一个 docker 容器到 运行 中。我已经多次验证两者都是 运行 并且以完全相同的方式构建。

当我将应用程序放在本地 docker 容器中时(使用 vagrant linux 机器)。翻译工作正常。当我把它放在 AWS 上时,翻译不起作用,它们只显示 msgid 文本。所以像 "website_title" 之类的东西而不是正确的本地化文本。

这对我来说真的很奇怪,因为一切都 运行 完全相同并且在 docker 个容器内,所以它们应该没有什么不同。

如果需要,我可以 post 删除一些包含敏感内容的代码片段,但我更希望有人能为我指明一个大概的方向,说明为什么会发生这种情况,或者如何调试它。据我所知,任何地方都没有记录错误。

我发现了问题。

我在本地 运行 它在 windows 计算机上的流浪虚拟机上。看起来是因为 windows 不是区分大小写的文件系统,当 python gettext() 函数正在寻找 en_US 时,我正在传递它 en_us,它找到了在 windows 上。但在 AWS 上,它没有,因为它是区分大小写的 运行 linux。