Tomcat の静的ページ (html) で中国語の文字化けが発生する問題の究極の解決策

Tomcat の静的ページ (html) で中国語の文字化けが発生する問題の究極の解決策

tomcatでは、jspは文字化けしませんが、htmlの中国語は文字化けします

理由はいくつかあります:

ページのエンコーディングが設定されていません。Tomcat の設定が正しくありません。保存されたファイルのエンコーディング形式が utf-8 ではありません。以下で解決策について説明します。

HTMLページはutf-8に設定され、 <meta>タグがページヘッダーに追加されます

ここに画像の説明を挿入

tomcat server.xml 構成

(1)URIEncoding="UTF-8"を追加する

<コネクタ ポート="8080" プロトコル="HTTP/1.1"
        接続タイムアウト = "20000"
        リダイレクトポート="8443" URIエンコーディング="UTF-8" />

(2)

<コネクタ ポート="8009" プロトコル="AJP/1.3" リダイレクト ポート="8443" URIEncoding="UTF-8"/>

tomcat で catalina.bat を設定する (jvm エンコーディング)

catalina.bat で、以下のset "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%"を追加します: -Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8
以下のように表示されます。

「JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%」を設定します
-Dfile.encoding=UTF8 -Dsun.jnu.encoding=UTF8

tomcat の web.xml (私の場合は 108 行目あたり) を次のように設定します。

<サーブレット>
    <サーブレット名>デフォルト</サーブレット名>
    <サーブレットクラス>org.apache.catalina.servlets.DefaultServlet</サーブレットクラス>
    <初期化パラメータ>
      <param-name>デバッグ</param-name>
      <パラメータ値>0</パラメータ値>
    </init-param>
    <初期化パラメータ>
    	<param-name>ファイルエンコーディング</param-name>
    	<param-value>UTF-8</param-value>
    </init-param>
    <初期化パラメータ>
      <param-name>リスト</param-name>
      <param-value>false</param-value>
    </init-param>
    <起動時に読み込む>1</起動時に読み込む>
  </サーブレット>

上記は Tomcat の文字化けしたコードを解決するための解決策です。設定後に Tomcat を再起動する必要があります。

Tomcatを再起動します:

tomcatがすでに起動している場合: コマンドラインにtomcatのインストールディレクトリを入力します。
C:\tomcat\bin> スタットダウン
次にC:\tomcatbin>スタートアップ
これでTomcatの再起動が完了します。

Tomcat の静的ページ (html) の中国語文字化け問題の究極的な解決策に関するこの記事はこれで終わりです。Tomcat の静的ページの中国語文字化け問題に関する関連コンテンツをさらにご覧になりたい場合は、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • SpringMVC、Tomcat、Intellij idea、Ajax における中国語の文字化けの問題を解決する
  • JavaとIdeaがTomcatを起動したときに中国語が文字化けする問題を解決する
  • Linux 上の Tomcat で MySQL にデータを挿入するときに中国語の文字化けが発生する問題を解決する
  • Tomcat サーバーの文字セットを utf-8 に設定して中国語の文字化けの問題を完全に解決する方法

<<:  TypeScriptにおけるunknownとanyの違いについて詳しく説明します

>>:  三角形を描画するための CSS 実装コード (border メソッド)

推薦する

ウェブフロントエンドウェブ開発の一般的なプロセスの簡単な紹介

フロントエンド開発を行っている初心者の学生を多く見かけますが、彼らの効率は比較的遅いです。常にコード...

Vue3とElectronを使ったデスクトップアプリケーションの詳しい説明

目次Vue CLIはVueプロジェクトを構築しますVue プロジェクトをマークダウン エディターに変...

Linux ファイルとユーザー管理の実践

1. /etc ディレクトリ内の、文字以外の文字で始まり、その後に文字と任意の長さのその他の文字が続...

Nodejs モジュール システムのソースコード分析

目次概要CommonJS 仕様Node の CommonJS 仕様の実装モジュールのエクスポートとイ...

MySQL slow_log テーブルを InnoDB エンジンに変更することはできません。詳細な説明

背景mysql.slow_log からスロー クエリ ログを取得するのは遅く、テーブルは csv テ...

jQueryのanimateアニメーションメソッドとアニメーションキューイング問題の解決方法の詳しい説明

目次animate() アニメーションメソッドアニメーションキューイングdelay() メソッドアニ...

Windows Server 2016 AD サーバーをセットアップする手順 (画像とテキスト)

導入: AD は Active Directory の略称で、中国語では Active Direct...

クラウド サーバーを使用して CentOS システムに .NET 6.0 をインストールする

.NET SDK ダウンロード リンクhttps://dotnet.microsoft.com/do...

MySQL のロングトランザクション例の詳細な説明

序文: 「MySQL 入門」シリーズの記事は終了しました。今後も引き続き MySQL に焦点を当て、...

TypeScript インターフェースの紹介

目次1. インターフェース定義2. 属性2.1 オプション属性2.2 読み取り専用プロパティ3. ク...

CentOS8.0ネットワーク設定の実装

1. CentOS 7 と CentOS 8 のネットワーク構成の違い: VMware Workst...

MySQL で datetime 型のデフォルト値を設定する方法

Navicat クライアントを通じてデフォルトの日時値を変更する際に問題が発生しました。データベース...

JavaScript 関数のパフォーマンスを測定するさまざまな方法の比較

目次概要パフォーマンス.nowコンソール.time時間精度を短縮注意事項分割して征服する入力値に注意...

2級コンピュータ試験のMySQL知識ポイント mysql alterコマンド

テーブル構造を編集するための MySQL の alter コマンドの使用。具体的な内容は以下のとおり...

nginx での listen ディレクティブの例の分析

プロットレビュー前回の記事では、ロケーション命令の解析プロセスを分析しました。この内容を簡単に確認し...