【发布时间】:2017-10-14 04:08:46
【问题描述】:
我使用 Clojure 和 ClojureScript 制作 Web 应用程序,并使用 Leiningen 进行编译。
我的问题是,在将 macOS 更新到 High Sierra 后,我编译的应用程序在我的系统中运行良好,但在将其复制到 Linux 服务器后,POST 参数变为 ISO-8859。
例如“pöttyös bögre”到“P?tty?s b?gre”。这当然会影响客户端和服务器之间的每笔交易,电子邮件发送,写入数据库等。我清理安装了 Sierra,然后它工作了。将其更新回 High Sierra,在 Linux 服务器上不再工作。我尝试使用区分大小写的 APFS 进行干净安装,但仍然无法正常工作。
有人知道这是什么原因吗?
【问题讨论】:
-
您是否尝试检查您的环境变量,例如
LANG、LC_ALL、LC_CTYPE?如果没有通过名为file.encoding的系统属性显式设置,JVM 会使用默认的操作系统编码和语言设置。您可以通过调用(java.nio.charset.Charset/defaultCharset)(例如来自 REPL)来检查 JVM 中哪个有效。 -
TMPDIR=/var/folders/1j/y9ybcqr17dz43_qx9x0z_0900000gn/T/Apple_PubSub_Socket_Render=/private/tmp/com.apple.launchd.OjaxnOp3ZP/Render TERM_PROGRAM_VERSION=400 OLDPWD=/Users/paulcristian BE32A3C2-6E67-454D-A8D6-9F698C53F090 USER=paulcristian SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.KEm79W7GuJ/Listeners PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin: /sbin PWD=/Users/paulcristian/Desktop/garaiker XPC_FLAGS=0x0 XPC_SERVICE_NAME=0 SHLVL=1 HOME=/Users/paulcristian LOGNAME=paulcristian LC_CTYPE=UTF-8 SECURITYSESSIONID=186a6 对我来说似乎不错:)
标签: clojure clojurescript leiningen macos-high-sierra