今回、やったことは、

●WordPressのURL変更

移動前 http://www.hoge.org/weblog/wordpress/
移動後 http://www.hoge.org/

●マルチサイト化

http://www.hoge.org/weblog/wordpress/にインストールされているWordPressをマルチサイト化。

つまりhttp://www.hoge.org/だけでなく、http://subdomain.hoge.org/

のようにsubdomainを使えるようにした。

●サブドメイン無限化

2のsubdomainをレンタルサーバーで割り当てている数以上に使えるようにした。

<<実際の手順>>

1、下準備

FTPソフトでWordPressのファイルを全バックアップ

http://www.hoge.org/weblog/wordpress/にインストールしてあるWordPressをバックアップする

*利用しているプラグインとパーマネントリンクの設定などは控えておく

*今回データベースをバックアップしなかったがしたほうがベター。

2、バックアップしたファイルをhttp://default.hoge.org/にアップロード

同じ環境を作るため、新たにWordPressをインストールするのではなくバックアップしたものを利用する。

3、.htaccessの書き換え

RewriteBaseとRewriteRuleを書き換える。

変更前
RewriteBase /weblog/wordpress/
RewriteRule . /weblog/wordpress/index.php [L]

変更後
RewriteBase /
RewriteRule . index.php [L]

4、index.php書き換え

index.php書き換える

変更前
require(‘./wp-blog-header.php’);

変更後
require(‘wp-blog-header.php’);

5、データベース書き換え

wp_options

option_name

siteurl

変更前 http://www.hoge.org/weblog/wordpress/
変更後 http://hoge.org/

home

変更前 http://www.hoge.org/weblog/wordpress/
変更後 http://hoge.org/

6、マルチサイト化する

(1)wp-config.phpを変更

wp-config.phpに

define (‘WP_ALLOW_MULTISITE’, true);

を追加。

(2)プラグイン停止

利用しているプラグインを停止する。

(3)ログアウトしログイン(http://hoge.org/)

(4)ネットワーク設定

サイドメニューにツールが追加される。その中からネットワークの設定を選ぶ。

(5)ネットワークの設定

wp-config.phpと.htaccessを変更

define( 'AUTH_SALT', '^2L%+~}D+I k}Yl5I4+X(_-PohS<{nK]z7I5c-gR(Mt8 ga]#}es[k.16`FWL2ox' );
define( 'SECURE_AUTH_SALT', 'a+0WtZRKU!R&sgWm@yqhv`]/^BS^? bRSb:V{-#F#>8~me&2F)s4PZ+O{j)wEFFr' );
define( 'LOGGED_IN_SALT', 'or9*d.+EP;/|X jZDgiF6+R~vLT KDVV~ZNHj.+=z +-6=`Vp{=e0}w%2&ML)e~S' );
define( 'NONCE_SALT', '%,!q}*M-ryVGf~Dvl5xcx*$F=1QJ`D>:E@|?,.PlqQxA{IBP#Tv//bAd$_xD$%}A' );

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ – [L]
RewriteRule . index.php [L]

(6)サーバーにアップロードし、ログアウトしてログイン

マルチ化成功となる。

wp-config.phpの書き換えの支持があったのでさらに書き換え

define( 'AUTH_KEY', '=H-e{+M(`g+?<af^NXZp*W5whoT(JlWmsz`bD1|-i%S%RQ$p`3+.xtb5kQ{Jp[Zw' );
define( 'SECURE_AUTH_KEY', '@[p!r+#W0O1Bi{[):l(ax%rHIX9zT9pr^_Vh}K_<hW/^{MY%.y:Y|`kNn;^U%2hr' );
define( 'LOGGED_IN_KEY', '2a8dkUq<0$3hV(KeY+y15c+5:@},_>=|$4tSnse34zx(gCm8)eT;_ym,KZY~p}N{' );
define( 'NONCE_KEY', '~ y*w/kX!b`:dP$Hht&2n=erDqh!<h8hd9RvuqV>#MgiW,D0wD=cXpAl[CiHM~P!' );

7、www.hoge.orgというサブサイトを作る

マルチサイト化したため、hoge.orgにhttp://www.hoge.org/weblog/wordpress/のデータが入っている

*パーマネントリンクの設定などに注意

8、データベース入れ替え

http://www.hoge.orgとhttp://hoge.orgのデータベースを入れ替える。

(1)wp_blogs  wp_2_options  siteurl

http://www.angelflower.org/=>http://angelflower.org/

(2)wp_2_options home

http://www.angelflower.org/=> http://angelflower.org/

(3)wp_2_options fileupload_url

http://www.angelflower.org/=> http://angelflower.org/
(4)wp_options siteurl

http://angelflower.org/=> http://www.angelflower.org/

(5)wp_options home

http://angelflower.org/=> http://www.angelflower.org/

(6)wp_options fileupload_url

http://www.angelflower.org/wp-content/uploads

以上によりWordPressのURLの変更が完了した

移動前 http://www.hoge.org/weblog/wordpress/
移動後 http://www.hoge.org/

9、.htaccessを変更

すでにインデックスされているhttp://www.hoge.org/weblog/wordpress/の記事を301リダイレクトして、http://www.hoge.org/に移動する。

RewriteRule ^weblog/wordpress(.*)$ /$1 [R=301,L]

を追加。

10、その他作業

www.hoge.com下にファイルやフォルダーを置いてある場合、default.hoge.comにコピーしないとアクセスできなくなる。

今回、そのようなファイルがあったのでそうした。

他のURL xxx.hoge.orgでもアクセスしてしまうという問題があるが気にしなければ別にこれでOK。
参考(感謝)
http://d.hatena.ne.jp/minorio/20080814/1218696892
http://wordpress.org/support/topic/warning-mainwp-blog-headerphp-error

その他(私のblog記事)

http://program.shinyblue.org/2012/02/03/core-mini%E3%81%AB%E3%81%A6%E3%82%B5%E3%83%96%E3%83%89%E3%83%A1%E3%82%A4%E3%83%B3%E3%82%92%E7%84%A1%E9%99%90%E5%8C%96%E3%81%97%E3%80%81wordpress3-3-1%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC/