CKEditor と呼ばれる JavaScript WYSIWYG テキスト エディターを使用しています。エディターには、ユーザーがテキスト エディターに入力した内容を HTML でマークアップするソース ビューがあります。 エディタがこのソース ビューに非改行スペース ( ) を挿入することがありますが、これは問題ありません。
すべてが開発マシンで正しく動作しているように見えたので、運用サーバーにデプロイしました。この時点で、奇妙な Â 文字 ( Â) がテキストに挿入されているのが見え始めました。いくつか読んだ後、これが CKEditor バグ追跡ページのいくつかのチケットで報告されていることがわかりました。ckeditor.jscharsetのタグの属性を に設定することで問題を解決できました。scriptUTF-8
私の質問は次のとおりです。なぜscriptタグcharsetは最初に属性を設定する必要があり、なぜ特定のシステムでのみ必要なのですか?
この SO の質問に対する最後のコメントでは、UTF-8 の改行なしスペースのバイト シーケンスは、実際には  文字の後に改行なしスペースが続くことに言及していますlatin1(これは ISO-8859-1 ですよね?)。ユーザーがソース ビューに切り替えるたびに、次から次へと別の  文字が挿入されるため、これは間違いなく手がかりになる可能性があります。 CKEditor フレームワークが非改行スペースを挿入しようとしているかのようですが、それは、次になどに変わり ます。すべてのcontent-typeシステム (Chrome デバッガーから表示) はtext/html;charset=ISO-8859-1で、理由はわかりません。すべての Tomcat 構成の Dfile.encoding オプションは に設定されていutf-8ます。タグmetaも.<meta charset="utf-8">