WordPress MUのマルチサイト化
「WordPress MUのインストール(3) - satake7’s memo」で一度は断念した WordPress MUのマルチサイト化ですが、DNSリダイレクトにしろ、Apacheの Redirectにしろ、転送がかかっているのにかわりはなく、「SEO的にどうなの?」というところに行き着いてしまいました。自分的には「URLが覚えやすけりゃいいじゃん」というくらいの認識なんですが、「検索エンジンで探すとせっかく独自ドメインとったのに、みんな同じ(転送先)ドメインで出てくるのって意味なくない?」なんて正論で突っ込まれるとグーの音も出ず。しかたがないので、もう一度マルチサイト化にトライしてみました。
WordPress MUのダウンロード
MUも 2.7が出ていますので、せっかくだから 2.7をインストールすることにします。
$ wget http://mu.wordpress.org/latest.tar.gz $ wget http://wpmu-ja.googlecode.com/svn/trunk/ja.po $ tar xzvf latest.tar.gz $ cp -v ja.po wordpress-mu/wp-content/languages/ $ cd wordpress-mu/wp-content/plugins/ $ cp -r /home/www/WPMU/wp-content/plugins/wp-multibyte-patch/ ./ $ cp -r /home/www/WPMU/wp-content/plugins/Cimy_Swift_SMTP/ ./ $ cp -r /home/www/WPMU/wp-content/plugins/ktai_style/ ./ $ cp -r /home/www/WPMU/wp-content/plugins/ac_authenticator/ ./ $ cp -r /home/www/WPMU/wp-content/plugins/Multi_Site_Manager/ ./ $ cd ../themes/ $ cp -r /home/www/WPMU/wp-content/themes/akiyakko/ ./ $ cp -r /home/www/WPMU/wp-content/themes/light/ ./
最新版のダウンロード以外、ちょっと余計なことをしています。
まず、日本語リソース 2.7版がまだ作業中だったので、作業チームの trunkから勝手にもってきてしまいました(数日待てば公開されるはず)。
プラグインはいままで使っていた4つ「wp-multibyte-patch:日本語対応パッチ」、「Cimy_Swift_SMTP:外部メーラーを使う」、「ktai_style:携帯スタイル」、「ac_authenticator:ログイン認証」と今回トライする1つ「Multi_Site_Manager:マルチサイト」です。
準備
ダウンロードした wordpress-muを公開ディレクトリにコピーします。データベースの作成も忘れずに。
$ cp -r wordpress-mu/ /home/www/ $ cd /home/www/ $ chmod 777 wordpress-mu/ $ chmod 777 wordpress-mu/wp-content/
$ mysql -u root -p mysql> create database wpmu; mysql> grant all on wpmu.* to 'wpadmin'@'localhost' identified by 'password';
httpでアクセスするための準備もやっておきます。
$ e /etc/apache2/sites-available/my_site
NameVirtualHost *:80
/etc/apache2/sites-available/my_site
ServerName site.net
DocumentRoot /home/www/wordpress-mu/
ErrorLog /home/www/wordpress-mu/log/error.log
CustomLog /home/www/wordpress-mu/log/access.log combined
$ mkdir /home/www/wordpress-mu/log/ $ s /etc/init.d/apache2 restart
インストール
Sub-domains方式を選択します。Sub-directories方式でも何回かトライしたのですが、毎度毎度破綻したのでサブディレクトリ方式はあきらめました。きっと何か設定をミスっているんだと思いますが、元々サブドメインでやるつもりだったので、深追いはしていません。その他はごく通常通りインストールします。
サイト追加の手順
1.ドメインを取る
確定したドメインを取ってから作りたいところですが、ドメインを確定する前にサイトを作る場合はテスト用として、hostsにドメイン名を設定しておきます。
192.168.1.251 site.net
C:\WINDOWS\system32\drivers\etc\hosts
2.Apacheのバーチャルホストの設定
上でやったようにドメインを WordPress MUのディレクトリに向けておきます。
3.Sitesでサイトを追加する
「サイト管理 >> Sites >> Add Site」でサイトを追加します。「Assign Blogs」というメニューがあって、これを使えばいいのかと思いがちですが、結論からいうとこれを使うとうまくいきません。やめておいたほうがいいです。
これはどういうことをするかというと、site1.netというサイトで blog1.site1.netと blog2.site1.netを作って、site2.netに blog2.site1.netを割り当てる機能で、そういうふうに「Assign Blogs」すると、site1.netから blog2が消えて、site2.netに blog2が移り、blog2.site2.netとなるようです。DBの中の site_idを書き換えているようですが、自分がちゃんと理解していないせいか、ブログとユーザ管理がぐちゃぐちゃになってアクセスできなくなってしまいました。
この件も含め、以降は試行錯誤の結果なので、環境その他によってはこの通りいかないかもしれません。あらかじめ予防線を張っておきます。
4.追加されたサイトの管理
「サイト管理 >> ブログ」をクリックするなどして、画面をリフレッシュすると「ダッシュボード」メニューに「New Site Created」が追加されます。
これをクリックすると新しく追加されたサイト「site.net」のログイン画面に切り替わりますので、「admin」でログインしてください。
5.ユーザの追加
これが悩むところです。新しく追加した site2.netでユーザを追加しても、ユーザ一覧で見るとそのユーザが参加しているのは元々の site1.netになっています。これを site2.netにするには、ダッシュボードから site2.netを選択して、ユーザ一覧からユーザをクリックして「ユーザの修正」の権限のところを「このブログでの権限なし」からそれ以外の権限にします。これでそのユーザをブログに参加させられます。
まとめ
要点は、「Sites >> Assign Blogs」をやらないことと、「New Site Created」を選択して修正すること、新しいサイトへのユーザの追加方法の3点でしょうか。うまくいくことを祈ります。
参考
- WordPress MUの固定ページで悩む - satake7’s memo
- http://www.pentadou.com/posts/359
- http://factory.theta.ne.jp/2007/03/21/wordpress-mu%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%9F%E3%83%90%E3%83%BC%E3%83%81%E3%83%A3%E3%83%AB%E3%83%9B%E3%82%B9%E3%83%88/
- WordPress MU 2.6.3インストールのはまりどころ | PC総合研究所
- http://d.hatena.ne.jp/yespamaster/20070905
- http://blog.taragana.com/index.php/archive/wordpress-2x-filters-comprehensive-list-for-plugin-and-theme-developers/12/ja/
- http://masha.maakikaku.jp/2007/05/mysql.php
- phpMyBackupPro――最も簡単に扱えるMySQL用バックアップツール | OSDN Magazine
- http://blog.isocchi.com/2008/02/linux-apache.html
- PHPをデバッグする方法を教えてください apacheで動いている状態… - 人力検索はてな
- bayashi.jp
- mod_rewrite - @bayashi Wiki
- 杉浦とホームページ製作〜URLを書き換えろ!「.htaccessに書く場合の注意」
- mod_rewriteモジュールを使ってURLを書き換えたい - Sakura scope
- http://mikeneko.creator.club.ne.jp/~lab/web/htaccess/
- http://www.techdego.com/2007/03/wordpresstrackback-url.php
- http://www.ilogic.jp/blog/web/wordpress/article5.html
- WordPress Themes | WordPress.org
- WordPress Themes, Hosting, Plugins, and Tutorials - WPHUB