2011.08.02
Word PressのインストールとMySQL・・・(Database, WordPress)
ブログの作成にはMovabletypeを用いているが、ブログ作成ツールとして米国などでは、Word Pressが圧倒的に大きなシェアを占めている。
直ちにWord Pressに移行しようとは思っていないが、インストールして様子を見てみることにした。
Word Pressは、phpで書かれており、MySQL上のデーターベースを用いて、ダイナミックにページを送出するようになっている。すなわち、phpとMySQLが必須なのである。かつ、日本語使用では文字コードはutf-8を使うことを前提で作られている。EUCで動かそうなどとは、考えない方が良さそうだ。
1. インストール
(1) Word Pressの日本語のページより、最新版のwordpress-3.2.1-ja.zipをダウンロドして解凍し、フォールダーごとWeb発信ディレクトリーに入れる。
(2) フォルダー名をwordpressとすると、下記のようにwordpressフォルダー内のwp-config-sample.phpをwp-config.phpに名前を変え、内容を修正する。
# cd wordpress # cp wp-config-sample.php wp-config.php # vi wp-config.php define('DB_NAME', 'wpdb'); ← DB名を入れる。 define('DB_USER', 'wpuser'); ← DBのユーザー名を入れる。 define('DB_PASSWORD', '******'); ← DBアクセスのパスワードを入れる。 define('DB_HOST', 'localhost'); define('DB_CHARSET', 'utf8');
2. データーベースの作成
MovabletypeではEUCコードで運用しているため、MySQLの文字コードは下記のようにujis(EUC)になっている。
mysql> SHOW VARIABLES LIKE 'character_set_%'; +----------------------------------+--------+ | Variable_name | Value | +----------------------------------+--------+ | character_set_client | ujis | | character_set_connection | ujis | | character_set_database | ujis | | character_set_filesystem | binary | | character_set_results | ujis | | character_set_server | ujis | | character_set_system | utf8 | +----------------------------------+--------+
しかし、Word Pressでは、utf8とする必要があるので、下記のように文字コードを指定して、データーベーを作成する。
# mysql -u root -p Enter password: パスワード mysql> create database wpdb CHARACTER SET utf8;; Query OK, 1 row affected (0.00 sec) mysql> grant all privileges on wpdb.* to wpuser@localhost identified by 'パスワード'; Query OK, 0 rows affected (0.13 sec) mysql> flush privileges; mysql> exit; Bye
これで、念のために文字コードを表示してみる。
$ mysql -u root -p Enter password: mysql> use wpdb; Database changed mysql> SHOW VARIABLES LIKE 'character_set_%'; +----------------------------+--------+ | Variable_name | Value | +----------------------------+--------+ | character_set_client | ujis | | character_set_connection | ujis | | character_set_database | utf8 | ← ここがutf8になっていればOK | character_set_filesystem | binary | | character_set_results | ujis | | character_set_server | ujis | | character_set_system | utf8 | +----------------------------+--------+ 7 rows in set (0.00 sec)
3. PHPに対する処置
MySQLのデーターベースの文字コードをutf8にして、Word Pressを起動すると問題なく動作するかに見えたが、記事を投稿しても記事内容が保存されない事象が発生した。
PHPもutf8で処理できるようにする必要がある。そこで、wordpressフォールダー内に.htaccessを作り下記の内容を入れたら、問題なく動作するようになった。やれやれ。
# vi .htaccess DirectoryIndex index.html index.cgi index.php index.shtml php_flag mbstring.encoding_translation off php_value default_charset "UTF-8"
コメント
コメントフィードを購読する
コメント投稿