WordPress 3.0 RC1でMultisite機能を試してみた。

情報共有のために会社の中でブログを使うことを考えると、やはり1つのインスタンスで複数サイトが管理できないと運用上大変です。
MovableType(商用版?)では複数サイト機能があるようですが、WordPress自体にはこれまで標準機能に複数サイト管理機能がありませんでした(これを解決する派生のWordPress MUがあります)
WordPress 3.0では、標準機能として複数サイトを管理する機能が付いています。
infoScoopの開発者用ブログを自サーバーに立てることになっているのですが一人一人立てるのも面倒だし、3.0では複数サイト機能が統合されることを聞いていたので、とりあえずRCまで待っていたところ、先月末にやっとWordPress 3.0がRCとなったので早速試してみることに。
リリースされたばかりなのに、既に日本語化もされていてコミュニティがすごい活発ですばらしいですね。

WordPressのインストール

自分用の備忘録のために、WordPressのインストール方法からメモっておきます。
OSはUbuntu10.4です。Windowsに一から入れる場合はXAMPPを使うのが簡単で良いです。

LAMPのインストール

LAMPスタックはtaskselコマンドでインストールすると簡単です。

$ sudo tasksel

以下の画面で[LAMP Server]を選択して[Enter]

MySQLのrootユーザのパスワードの入力を要求されたら、パスワードを入力して[Enter]

この画面は3回出てきます。

apt-getならこんな感じ。

$ sudo apt-get install apache2 php5 php5-gd mysql-server php5-mysql phpmyadmin
WordPressのインストール

Ubuntu 10.4の標準リポジトリは2.9.2なので、3.0-RC1はサイトから直接ダウンロードします。

$ wget http://ja.wordpress.org/wordpress-3.0-RC1-ja.zip

ApacheのDocumentRootに展開します。

$ sudo unzip wordpress-3.0-RC1-ja.zip -d /var/www/
WordPress用のDBを作成
$ mysql -uroot
mysql> create database wordpress default character set utf8; 
mysql> exit;
普通にインストール

解答したディレクトリに移動しておきます。

$ cd /var/www/wordpress

WordPressインストールは、データベースだけ作成しておいて、次に展開したディレクトリを指すURLにアクセスするとWeb上でインストールが行えます。
インストール時に、WordPressの設定ファイルwp-config.phpを作成するので、wordpressフォルダのオーナーをApacheの起動ユーザに変えておきます。

$ sudo chown -R www-data wordpress/

http:///wordpress/にアクセスするとWordPressの設定ファイルwp-config.phpを作成するかどうか聞かれます。[wp-config.php ファイルを作成する]ボタンをクリックして、次ページ以降、必要項目を入力して進んで行くとインストールは完了です。

PHPのWebアプリはインストールが簡単なのが素晴らしいですね。

複数サイトを有効にする

次に本題の複数サイトの管理を有効にします。
インストールで作成されたwp-config.phpに以下の行を追加します。

define('WP_ALLOW_MULTISITE', true);

一番上のMySQLの設定の上に追加してみました。
管理ページ(http:///wordpress/wp-admin/)を開くと[ツール]メニューに[ネットワーク]というメニューが追加されています。

[ネットワーク]メニューを開くと「WordPress サイトのネットワークを作成」というページが開きます。

このページにApachemod_rewriteを有効にしろと書いてあります。
確認したところデフォルトでは無効だったので有効にします。

sudo a2enmod rewrite

AllowOverwriteをAllに変更します。

sudo vi /etc/apache2/sites-enabled/000-default 

とりあえずwww以下を変更してしまいました。

        
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        

Apacheを再起動。

sudo /etc/init.d/apache2 restart

[インストール]ボタンをクリックして次のページに進みます。
以下のように、複数サイトを有効にするための設定手順が表示されます。

書いてある支持に従って、blogs.dirディレクトリの作成、wp-config.phpの編集、.htaccessファイルの追加を行い、管理画面に再ログインすると、以下の様に複数サイト管理用の[特権管理者]メニューが追加されます。

サイトの追加は、[特権管理者]メニューの[サイト]からできます。以下の画面。

適当に設定を入力して[サイトを追加]をクリックすると新しくブログサイトが追加されました。
http:///wordpress/hrendohにアクセスすると以下のようにちゃんとサイトが新設されました。