僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。
Centのお守り絡みで色々試してみる。LXCは便利だ。
現時点で、日本語の静的コンテンツは、
UTF-8、EUC-JP、ISO-2022-JP、Shift_JISいずれも
可能だった(iPhoneでも文字化けなく表示できる)。
ただしWebサーバが文字コード決め打ちになっていて、それと
違う場合は、HTMLの方で
言語とコンテンツタイプを指定するだけでは不十分、らしい。
<HTML lang=ja> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=EUC-JP">
$ curl -I $OLD_SERVER
HTTP/1.1 200 OK
Date: Mon, 27 Aug 2018 01:58:26 GMT
Server: Apache/2.2.15 (CentOS)
Last-Modified: Sat, 25 Aug 2018 03:02:59 GMT
ETag: "482cc2-c-57439bac9dd77"
Accept-Ranges: bytes
Content-Length: 12
Connection: close
Content-Type: text/html; charset=UTF-8
対応策として、
1. Webサーバのデフォルト設定を外す
(例えばApache2.4とかならAddDefaultCharset Offとか
この場合、どこかが巻き添えになる可能性あり)
2. Webサーバの方でディレクトリなどを
限定して文字コードを指定する(AddDefaultCharset EUC-JPとか。
この場合ディレクトリ単位で決め打ち)
3. .htaccessに文字コード指定を放り込む(欠点は2.同様、そして.htaccess自体が非推奨)
4. 全部UTF-8にする(コンテンツ側の修正が必要)
とかになるらしい。
それにしてもブラウザのキャッシュ破棄が面倒。DisableCache
にチェックを入れても、F5を打鍵しても
既成のデータをなかなか読み直してくれない。
サーバ側でtouch index.htmlとかやればともかく。
ガラケーに送信してみた。
途中でコンバートしてくれたようだ。絵文字も含め、無事読めることを確認。
Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 Mime-Version: 1.0 (1.0) Date: Mon, 27 Aug 2018 12:38:20 +0900 Subject: ZZZZZZZZZZZZZZ Message-Id: <XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX> To: YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY X-Mailer: iPhone Mail (15E216)
リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。