我在 solr 的编码方面遇到了问题。我们在两台不同的服务器上有“相同”的设置,但其中一台能够在没有 ???字符,但测试服务器遇到了麻烦。
Solr 结果示例:
生产服务器:
effet sur l’acquisition des connaissances »\n\n#12;#12;EFFET D’UNE SÉQUENCE
测试服务器:
effet sur l’acquisition des connaissances »\n\n��EFFET D’UNE SÉQUENCE D’ENSEIGNEMENTS
我在两台服务器上运行相同版本的 java:
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
两者都有相同的 Java 选项:
JAVA_OPTS=" -Dfile.encoding=UTF-8 "
两个 solr 具有相同的 Java 属性(在 UI 中)。
#12; 是什么意思?什么意思?
问题出在哪里?
操作系统:
- Ubuntu 14.04
软件:
- Tomcat 8.0.43
- 空间 6.0
- Solr 4.10.4
编辑: 两台服务器上的语言环境输出:
LANG=en_CA.utf8
LANGUAGE=en_CA:en
LC_CTYPE="en_CA.utf8"
LC_NUMERIC="en_CA.utf8"
LC_TIME="en_CA.utf8"
LC_COLLATE="en_CA.utf8"
LC_MONETARY="en_CA.utf8"
LC_MESSAGES="en_CA.utf8"
LC_PAPER="en_CA.utf8"
LC_NAME="en_CA.utf8"
LC_ADDRESS="en_CA.utf8"
LC_TELEPHONE="en_CA.utf8"
LC_MEASUREMENT="en_CA.utf8"
LC_IDENTIFICATION="en_CA.utf8"
LC_ALL=
谢谢!
最佳答案
问题不在于编码,而在于 DSpace 的工作方式。我必须运行命令:
./dspace filter-media -f
此命令将从 PDF 重新生成 .txt 文件并重新索引文档。所以每次我尝试用正确的编码索引文档时,它都没有改变任何东西。
关于使用 Solr 和 tomcat 进行 Java 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44546401/