DebianにWordPressをインストール



WordPressはPHPで書かれたオープンソースのCMSです。

CMSの中でもMovableTypeのようにブログ機能に特化しているブログツールのように感じます。(もちろんカスタマイズすればブログ以外にも使えます)
豊富なテンプレートにより簡単にデザインが変更でき、プラグインによる機能拡張、MS Wordのようなエディタによるコンテンツ編集などが特徴です。

WordPress MU(Multi Userの略)を使えば様々な人がサブドメインでBlogが作れる、ブログサイトを作ることが出来ます。(ただしMUは近々無印WordPressに統合されるようです)

ここではWordPress MUを使って、ブログサイトを作っていきます。
WordPressはMySQLを必要としますので、MySQLを参考にしてインストールを済ませておいてください。

WordPress MUのインストール

まずインストールディレクトリを決めます。
今回はApacheのルートディレクトリ(/var/www)下にインストールすることにします。

wgetでWordpress Muのサイトから最新版をダウンロードし(執筆時の最新版は2.8.2でした。)、解凍します。

# cd /var/www
# wget http://mu.wordpress.org/latest.tar.gz
--2009-08-04 22:21:04--  http://mu.wordpress.org/latest.tar.gz
mu.wordpress.org をDNSに問いあわせています... 72.233.56.139, 72.233.56.138
mu.wordpress.org|72.233.56.139|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 特定できません [application/x-gzip]
`latest.tar.gz' に保存中

    [            <=>                                  ] 2,184,001    690K/s 時間 3.1s

2009-08-04 22:21:08 (690 KB/s) - `latest.tar.gz' へ保存終了 [2184001]

#
#tar xvf latest.tar.gz
wordpress-mu/
wordpress-mu/wp-trackback.php
wordpress-mu/wp-config-sample.php
wordpress-mu/wpmu-settings.php
wordpress-mu/wp-settings.php
wordpress-mu/wp-rss2.php
wordpress-mu/index.php
    (中略)
wordpress-mu/wp-content/plugins/index.php
wordpress-mu/wp-content/plugins/readme.txt
wordpress-mu/wp-content/mu-plugins/
wordpress-mu/wp-content/mu-plugins/index.php
wordpress-mu/wp-content/mu-plugins/readme.txt
wordpress-mu/htaccess.dist
#

設定作業の為、一時的にパーミッションを変更しておきます。

# chmod 777 wordpress-mu wordpress-mu/wp-content

Apacheの設定

WordPress MUでは www.example.com/wordpress-mu/ といったサブディレクトリでの動作ができません。example.com といったドメインでの運用が必須になります。
これはMulti Userの場合、各ユーザーのblogが user1.example.com や user2.example.com というように、各ユーザー毎にサブドメインを使用するためです。

WordPressをドキュメントルート下に入れたためサブディレクトリとなりますが、ApacheのVirtualHost機能を使って、ドメインでアクセスできるようにします。
VirtualHostの項目を参照して設定してください。今回はblog.hogehoge.comという名前にしました。

MySQLの設定

WordPressはMySQLを使って動作するので、MySQL側でも設定作業を行います。
MySQLの操作に関してはMySQLの操作を参照してください。
MySQLに管理者権限でログインします。

# mysql -u 管理者のID -p
Enter password:管理者パスワード Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 39
Server version: 5.0.51a-24+lenny1 (Debian)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql>

WordPress用のDBを作成します。
ここではwordpress_muという名前で作ることにします。

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
+--------------------+
2 rows in set (0.00 sec)

mysql>

mysql> create database wordpress_mu;
Query OK, 1 row affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| wordpress_mu       |
+--------------------+
3 rows in set (0.01 sec)

mysql>

DBが作成できたら、DBを操作する専用のユーザーを作ります。
簡単にwordpress_muというユーザーにすることにします。

mysql> grant all privileges on wordpress_mu.* to wordpress_mu@localhost identified by 'wordpress_muユーザーのパスワード';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql>

日本語モジュールの適用

WordPressを日本語で使用するため、モジュールを適用します。
モジュールはお使いのWordpressのバージョンにあったものを導入してください。

# cd /var/www/wordpress-mu/wp-content
# mkdir languages
# cd languages
# wget http://wpmu-ja.googlecode.com/files/wpmu-282-ja.zip
--2009-08-06 17:02:04--  http://wpmu-ja.googlecode.com/files/wpmu-282-ja.zip
wpmu-ja.googlecode.com をDNSに問いあわせています... 74.125.155.82
wpmu-ja.googlecode.com|74.125.155.82|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 254428 (248K) [application/x-zip]
`wpmu-282-ja.zip' に保存中

100%[========================================================================>] 254,428      168K/s 時間 1.5s   

2009-08-06 17:02:06 (168 KB/s) - `wpmu-282-ja.zip' へ保存完了 [254428/254428]
#
# unzip wpmu-282-ja.zip

インストールの仕上げ

ここまできたら設定したドメインblog.hogehoge.comにブラウザでアクセスします。
メッセージが表示されればインストールは成功です。

後は表示の通りにメールアドレス等を入力していけば、「Installation Finished!」の画面が表示されるはずです。
画面の支持通り、パーミッションを変更したディレクトリを元に戻しておきます。

# chmod 755 /var/www/wordpress-mu /var/www/wordpress-mu/wp-content/

真っ白の画面が表示されたら・・・・

自分の場合は動作に必要なモジュールが足りなくて、画面が真っ白になり何も表示されなくなってしまいました。
原因はphp5-mysqlをインストールしていなかったためです。

apt-getでphp5-mysqlをインストールします。

# apt-get install php5-mysql
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
  php5-mysql
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。
65.6kB のアーカイブを取得する必要があります。
この操作後に追加で 246kB のディスク容量が消費されます。
取得:1 http://ftp.jp.debian.org lenny/main php5-mysql 5.2.6.dfsg.1-1+lenny3 [65.6kB]
65.6kB を 0s で取得しました (87.8kB/s)
未選択パッケージ php5-mysql を選択しています。
(データベースを読み込んでいます ... 現在 115498 個のファイルとディレクトリがインストールされています。)
(.../php5-mysql_5.2.6.dfsg.1-1+lenny3_i386.deb から) php5-mysql を展開しています...
php5-mysql (5.2.6.dfsg.1-1+lenny3) を設定しています ...
#

Apacheの再起動をして、php5-mysqlを読み込ませます。

# /etc/init.d/apache2 reload

internal errorと表示されたら

Apacheのモジュールmod_rewriteが有効になっていない可能性があります。
DebianではApacheのモジュールを有効化するときにa2enmodコマンドを使います。
モジュールを有効にした後、Apacheを再起動します。

# a2enmod rewrite
# /etc/init.d/apache2 reload

セキュリティ対策

最低限のセキュリティ対策をします。
htaccess.distに書くわけですが、
まず1行目は予期しない変数の初期値を設定されないため。
2行目はPHPのエラー情報を表示させないようにします。

# vi /home/www/wordpress-mu/htaccess.dist
php_flag register_globals 0
php_flag display_errors 0

以上でWordpress MUのインストールは終了です。



コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


− 2 = 6

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>