Heim >Betrieb und Instandhaltung >Betrieb und Wartung von Linux >Wie löse ich die verstümmelten chinesischen Zeichen in Tomcat-Protokollen?
Die chinesische Sprache des Linux-Systems ist verstümmelt. Dies ist ein Problem, auf das viele Freunde häufig stoßen, wenn sie zum ersten Mal mit Linux in Kontakt kommen. Darüber hinaus werden die chinesischen Ausgabeprotokolle angezeigt, wenn wir die in Windows bereitgestellten Projekte auf Linux übertragen von Tomcat sind alle verstümmelt (normal unter Windows), es sieht sehr frustrierend aus, wie sollen wir es also lösen?
System chinesischer verstümmelter Code
Tomcat-Ausgabeprotokoll chinesischer verstümmelter Code
Systemumgebung
CentOS 7.0 64-bit
jdk-8u11-linux-x64.
Apache-Tomcat -8.5.16
Lösungsschritte:
Überprüfen Sie zunächst, ob das chinesische Sprachpaket auf dem System installiert ist
# locale -a (listet die Namen aller verfügbaren öffentlichen Gebietsschemas auf)
seit in im Namen aller verfügbaren öffentlichen Gebietsschemas Was tun mehrere Elemente bedeuten?
{Sprachcode}_{Ländercode}.{Zeichensatz}
zh ist der Code für Chinesisch, CN ist der Code für China, gb18030, gb2312, utf8 ist der Sprachzeichensatz
Sie in China umgehen - Sie sprechen Chinesisch, Sie sind in China, und das Sprachcharakter ist GB18030/GB2312/UTF8 - Wenn die obigen Elemente nicht gefunden werden, installieren Sie die chinesische Sprache manuell manuell installieren Paket
>
Bevor wir die Konfigurationsdatei ändern, werfen wir einen Blick auf das aktuelle Systemgebietsschema
(„en_US.UTF-8“ kann als „Sie sprechen Englisch, Sie befinden sich in den Vereinigten Staaten und der Sprachzeichensatz“ verstanden werden ist UTF-8" gemäß dem obigen Inhalt)
Jedes Element Die Bedeutungen sind:LANG: Die Sprache des aktuellen Systems
LC_CTYPE: Sprachsymbole und ihre KlassifizierungenLC_NUMERIC: Zahlen
LC_COLL ATE: Gewohnheiten vergleichen und sortieren
LC_TIME: Zeitanzeigeformat
LC_MONETARY: Währungseinheit
LC_MESSAGES : Informationen sind hauptsächlich Eingabeaufforderungsinformationen, Fehlerinformationen, Statusinformationen, Titel, Beschriftungen, Schaltflächen und Menüs usw.
LC_NAME: Methode zum Schreiben von Namen
LC_ADDRESS: Methode zum Schreiben von Adressen
LC_TELEPHONE: Methode zum Schreiben von Telefonnummern
LC_MEASUREMENT: Ausdruck für Gewichte und Maße
LC_PAPER: Standardpapiergröße
LC_IDENTIFICATION: Übersicht über die im Gebietsschema selbst enthaltenen Informationen
LC_ALL: Die Variable mit der höchsten Priorität, alle LC_*- und LANG-Variablen werden gezwungen, ihrem Wert zu folgen.
Wir sehen, dass das Gebietsschema von Der lokale Computer ist nicht chinesisch. Ändern Sie zunächst die i18n-Konfigurationsdatei
# vim /etc/sysconfig/i18n
Fügen Sie die folgenden zwei Codezeilen hinzu
LANG="zh_CN .UTF-8"
LC_ALL="zh_CN.UTF-8" # source /etc/sysconfig/i18n Ändern Sie dann die Konfigurationsdatei locale.cnflogous in e.conf
3. Terminalverbindungskodierung festlegen
Datei->Öffnen->Sitzung auswählen->Rechtsklick-> ; Eigenschaften->Terminal (das von mir verwendete Terminalverbindungstool istStellen Sie die Verbindung wieder her und überprüfen Sie das aktuelle Systemgebietsschema
Versuchen Sie erneut, Chinesisch zu bearbeiten
#vim Are Bist du ein Schwein? >
ERFOLGREICH! Zu diesem Zeitpunkt wurde das Problem der chinesischen Verstümmelung des Systems gelöst. 4. Lösen Sie das Problem verstümmelter chinesischer Zeichen im Tomcat-Ausgabeprotokoll Nachdem nun die chinesischen verstümmelten Zeichen im System gelöst wurden, werden auch die chinesischen verstümmelten Zeichen im Tomcat-Ausgabeprotokoll gelöst ? Schauen wir uns nun das Tomcat-Ausgabeprotokoll anGeben Sie das Tomcat-Verzeichnis ein
# cd $CATALINA_HOME
# tail -f ./logs/catalina. out
Leider sind die chinesischen Schriftzeichen im Tomcat-Protokoll immer noch verstümmelt.
Analyse: Da das System keine verstümmelten chinesischen Zeichen mehr enthält, beweist dies, dass die Systemsprachenumgebung normal ist, das Tomcat-Protokoll jedoch immer noch mit verstümmelten chinesischen Zeichen angezeigt wird, was darauf hinweist, dass es sich um ein internes Problem von Tomcat I handelt Ich habe einige Informationen online überprüft und festgestellt, dass es sich um die JVM (Java Virtual Machine) handelt.
Dies liegt an der Inkonsistenz zwischen dem von der Java Virtual Machine verwendeten Zeichensatz und dem vom System verwendeten Zeichensatz Wenn Sie den Grund kennen, wird das Problem gelöst. Sie können den von der JVM verwendeten Zeichensatz ändern, indem Sie die Startparameter des JVM-Zeichensatzes konfigurieren.
🎜> # vim ./ Bin/Daemon.sh
🎜># ./bin/shutdown.sh
# ./bin/startup.sh
Überprüfen Sie nun das Ausgabeprotokoll # tail -f ./ logs/catalina.out Senden Sie eine Anfrage an den ServerDas obige ist der detaillierte Inhalt vonWie löse ich die verstümmelten chinesischen Zeichen in Tomcat-Protokollen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!