MySQL .. php .. Apache という構成で
WordPress
を設定するとします。
この時の charset をどうするかという話です。
- 最終的にどの charset で送出するか (UTF-8 or EUC-JAPAN or ISO-2022-JP)
- (それを決めたとして) そのためには、どこでどう設定するか ?
という話です 各構成部品 (MySQL/PHP4/Apache2) は、他と少し兼用して
いるものもあるので、自由には設定が出来ないという仮定です。
.. 以下もう少し書く予定 ..
系 | 設定譜 | 設定例 | 効果 | 方法 1 | 方法 2 |
MYSQL |
|
|
| EUC-JP |
|
WordPress | wp-config.php | define ('WPLANG', 'ja_EUC') | meta host-equiv .. に使う | 無効化する | 同左 |
php | php.ini | mbstring.internal_encoding = EUC-JP | php への受取 |
|
|
|
| mbstring.http_output = EUC-JP | php から apache へ渡す |
|
|
Apache 全体 | httpd.conf | AddDefaultCharset ISO-2022-JP | HTTP で出力する |
|
|
|
| AddCharset ISO-2022-JP .iso2022-jp .jis | (名前別設定。今回関係無) |
|
|
Apache Directory | .htaccess | AddDefaultCharset EUC-JAPAN | ディレクトリ別設定 |
|
|
どうも他の機械との trackback とか commment とかを考えると UTF-8 にしておいた方がいいのでは ?
という気がしている。つまり力関係っていうやつで。しかし:
- php を「他」と兼用している
- その「他」の都合では EUC-JAPAN にしておきたい
という条件が一番きつい気がする .. つまり UTF-8 に出来るんかいなぁ .. ということ。
あるいは、php を全て UTF-8 にするとしてもその「他」のものの移行は大丈夫か、という気も。
良い方法があったら、誰か教えて欲しい ..
森田さんの日記に書いてあった。
.htaccess に次のように書いて見る
php_value mbstring.http_output UTF-8
なるほど、うまく行っているようだ。
ttyp9:makoto@st4200 23:34:13/051016(~)> curl -I http://www.ki.nu/~makoto/wordpress/
HTTP/1.1 200 OK
Date: Sun, 16 Oct 2005 13:27:54 GMT
Server: Apache/2.0.54 (Unix) mod_ssl/2.0.54 OpenSSL/0.9.7d DAV/2 PHP/4.3.11
X-Powered-By: PHP/4.3.11
X-Pingback: http://www.ki.nu/~makoto/wordpress/xmlrpc.php
Content-Type: text/html; charset=UTF-8
X-Pad: avoid browser bug
WordPress のフォーラムに書いてあった →
2005/2/17 の記事