运行 Sinatra 时出现编码错误

encoding error while running Sinatra

我有我的 Sinatra-Redis 博客,在我将它上传到服务器之前,它在我的计算机上 运行 非常好。但是我收到错误消息说我什么时候 运行 它在我的服务器上

"Encoding::CompatibilityError - incompatible character encodings: US-ASCII and UTF-8"

我发现有一些答案,比如在我的代码前面加上“#encoding:UTF-8”,它对我不起作用

我试过在我的 erb 文件中的值后加上“.force_encoding("utf-8")”,它有效,但我认为这不是解决问题的唯一方法问题,因为我不想在我所有的值之后加上“.force_encoding("utf-8")”。

Ruby版本:2.3.1 redis version:3.0.7 我正在使用 erb 作为我的模板系统。

提前致谢!

这个问题我遇到过很多次了。它在我的本地主机 (MacOS) 上运行良好,但发现在服务器 (Debian) 上有问题。这可能是因为您的服务器使用了不同的编码设置。

您可能需要更改编码并重新启动服务器。

参考: https://www.linuxquestions.org/questions/linux-newbie-8/how-to-change-the-default-encoding-203988/