今回、私が将来的にやって行きたいサイト全体の構成を図にしてみると、下記のようになります。
各サイトごとにWordpressをインストールすれば出来ないことではないようなのですが、面倒で管理が煩雑になりそうな気がしたり、スマートではないような感じがしたので、1つの管理画面ですべてのサイトを管理できないか調べてみました。
その結果、「マルチサイト」化するための設定と「マルチドメイン」化する設定が必要だという事が分かりました。
大まかな手順は下記の通りになります。
- 追加ドメインのサーバー設定
- サブドメインのサーバー設定
- WordPressのマルチサイト設定
- 追加サイト(サブドメイン)の登録
- WordPressのマルチドメイン設定
- 追加サイト(別ドメイン)の登録とドメインマッピング
すでにロリポップサーバーに独自ドメイン「aaa.com」を設定し、そのルートディレクトリにWordpressをインストールしているという状態からスタートします。
1. 追加ドメインのサーバー設定
- ロリポップサーバー管理画面から「独自ドメイン」-「独自ドメイン設定」に入ります。
- 一番下の「独自ドメイン設定」ボタンをクリックします。
- 「設定する独自ドメイン」に追加する”bbb.com”を入力、「公開 ( アップロード ) フォルダ」は空白にして設定を完了します。
(※aaa.comと同じルートディレクトリに設定するという意味になります。)
ここでしばらく時間を置かないと、サブドメインの設定ができません。できれば一晩待つくらいがいいかもしれません。
2. サブドメインのサーバー設定
- ロリポップサーバー管理画面から「独自ドメイン」-「サブドメイン設定」に入ります。
- 「サブドメイン」に追加したいサブドメインを入力&選択、ドメインを選択「公開 ( アップロード ) フォルダ」は空白にして設定を完了します。
(※サブドメインも含め、全て公開フォルダはルートディレクトリに設定します。)
ここでまた時間を置を置く事をお勧めします。(DNS設定が正常に伝播するには時間がかかるため)
あまり急いで次の作業を進めると、トラブルが発生したときに何が原因なのか分からなくなってしまいます。
3. WordPressのマルチサイト設定
この工程が素人の私には一番ハードルが高かったと思います。まず、作業に入る前に下記2つを用意しておいてください。
- FTPソフト(FFFTPなど。ロリポップ!FTPでは、アップロードしか出来ないので。)
- テキストエディタ(秀丸など。メモ帳では改行がおかしくなったりするので)
ここからは慎重に作業を進めてください。
- FTPソフトでサーバーに接続し、サーバーのルートディレクトリ(一番上の階層)の中にあるwp-config.phpをダウンロードします。(※この時点でバックアップを取っておく事をお勧めします)
- このwp-config.phpをテキストエディタで開きます。
- ファイルの「編集が必要なのはここまでです !」と記載された行より上の部分に「 define (
'WP_ALLOW_MULTISITE'
, true);」と追記して上書き保存します。
wp-config.php
define ('WP_ALLOW_MULTISITE', true);
- 上書きしたwp-config.phpをサーバーの元の場所にアップロードして上書き保存します。
- WordPressの管理画面にログインします。すると、左メニューの「設定」に「ネットワーク設定」が現れます。
- 「ネットワーク設定」をクリックして、「サブドメイン」を選択し、「ネットワーク名」を入力、「メールアドレス」に管理者のメールアドレスを入力し、「インストール」ボタンをクリックします。
- すると、いろいろな警告が出ているページが表示されます。
- 指示に従い、wp-config.phpを再度追記&上書き保存し、サーバーに再度アップロードします。
- サーバーのルートルートディレクトリにある.htaccessをダウンロードし、こちらもテキストエディタで開き、指示されている内容を追記して、サーバーに上書き保存します。
(※ピンクの警告部分は、ロリポップサーバーの使用上、仕方ないようです。このまま進めても問題ないようなので無視します)
- WordPressの管理画面にログインし直します。すると、左上のメニューの内容が変わり、「参加サイト」や「サイトネットワーク管理者」といった項目が追加されます。
この追加項目の表示が確認できたら完了です。
4. 追加サイト(サブドメイン)の登録
2で設定しておいたサブドメイン(aaa.comのもの)をWordpressに設定し、サイトを作ります。
- WordPressの管理画面から「参加サイト」-「サイトネットワーク管理者」-「サイト」を選択し「新規追加」ボタンをクリックします。
- 「サイトのアドレス」に2で設定したサブドメインを入力、「サイトのタイトル」「管理者メールアドレス」も入力し、「サイトを追加」ボタンをクリックします。
- 追加したサイトが正しく表示され、管理画面の「参加サイト」に表示され、ダッシュボードにログインでき、各管理メニューが問題なく表示できていれば完了です。
5. WordPressのマルチドメイン設定
4までで複数サイトを管理する設定(マルチサイト)ができました。
ですがここまでで管理できるのは同一ドメイン内のサブドメイン限定になります。
ここからはドメインを跨いで複数さいとを管理する設定(マルチドメイン)の設定を行います。
こちらは「MU Domain Mapping」というプラグインを使って設定する手順になります。
- WordPressの管理画面から「サイトネットワーク管理者」-「ダッシュボード」を選択します。
- 「プラグイン」-「新規追加」を選択します。
- 検索ボックスにMU Domain Mappingと入力し、検索します。
- 検索結果に表示された「MU Domain Mapping」の「いますぐインストール」をクリックしてインストールします。
- FTPツールでサーバーに接続し、「/wp-content/plugins/wordpress-mu-domain-mapping」というディレクトリの中にsunrise.phpというファイルがある事を確認します。
- このsunrise.phpを、「/wp-content/」の中にコピーします。
- 2で使ったルートディレクトリ(一番上の階層)の中にあるwp-config.phpに、今度は「define( ‘SUNRISE’, ‘on’ );」と追記して上書き保存します。
define( 'SUNRISE', 'on' );
- WordPressの管理画面に戻り、左メニューの「設定」の中に「Domain Mapping 」「Domains」表示されれば完了です。
6. 追加サイト(別ドメイン)の登録とドメインマッピング
この設定は少々わかりづらいのですが、4の追加サイト(サブドメイン)の登録を行い、その後でドメインを変更し、ドメインマッピングを行うという手順になります。
- 4と同様の手順でbbb.comで作ったサブドメインを設定します。この際、ルートドメインは変更できなくなっています。(aaa.comは変更できなくなっています)site1.bbb.comを設定したい場合、これでは設定ができないのですが、とりあえずsite1.aaa.comにして登録しておきます。
- 「サイト」-「すべてのサイト」を選択し、いま登録したsite1.aaa.comの「編集」をクリックします。
- 「情報」タブの中に「ドメイン」という項目があるので、正しいsite1.bbb.comを入力し、「変更を保存」ボタンをクリックします。この際、何番目に登録したサイトなのかを覚えておいてください。今回は手順通りに進めると、おそらく3番目になるかと思います。
- 「設定」-「Domains」を選択します。
- New Domainにて、「Site ID」に覚えておいた3番目の3を入力、「Domain」にサイトのドメインと同じsite1.bbb.comと入力、「Primary」はチェックをつけたままで「save」ボタンをクリックします。
- 「サイト」-「すべてのサイト」に戻ります。
- 先ほど登録した「site1.bbb.com」のMappingに「site1.bbb.com」と表示されているか確認します。表示されていれば完了です。
- もし別のサイトのMappingに「site1.bbb.com」が表示されているようでしたら、「設定」-「Domains」に戻り、一度削除してから、「Site ID」を変更して再登録し、もう一度Mappingを確認してください。
ドメインマッピングとは、そもそもサイトのドメインを変更した際などにまるごとリダイレクトする機能のようなので、今回は直接必要はないのですが、これが正しく設定されていないと、管理画面にログインできなくなってしまったり、別のサイトにリダイレクトされてしまったりといった症状がありました。
以上が、私が独学で調べた手順になります。プロの方から見たら、間違っている部分があったり、もっと効率的な方法があるのかもしれませんが、とりあえずこれで動いているようなので、しばらく様子を見てみます。
スポンサードリンク
インターネット・コンピュータ ブログランキングへ
こんにちは!
一生懸命マルチサイト化を進めておりますが、
6. 追加サイト(別ドメイン)の登録とドメインマッピングで
「設定」-「Domains」でエラーが出ます。
Please uncomment the line define( ‘SUNRISE’, ‘on’ ); or add it to your /home/users/1/main.jp-chousei/web/wp-config.php
何度かクリーンインストルで挑戦しますが、同じ結果で。
ご教授願います。
2013年1月31日 5:14 PM | 原 正博 |
原さん
コメントありがとうございます。
私も初心者ですし、このようなエラーは出なかったので、困ってしまったのですが、いろいろ検証してみました。
その結果、5.の一番最後の
“■2で使ったルートディレクトリ(一番上の階層)の中にあるwp-config.phpに、今度は「define( ‘SUNRISE’, ‘on’ );」と追記して上書き保存します。”
これをしなかった場合、全く同じエラーが出ます。
wp-config.phpにこちら追記しておりますでしょうか?または、違うファイルに追記していませんでしょうか?
再度ご確認頂いて、またご連絡ください。
2013年2月1日 8:00 AM | ダンパ |
はじめまして。
超初心者なのですが、マルチサイトに挑戦し、MU Domain Mappingのインストールまでできました。
ところが、インストール後にワードプレスにログインすると、
The domain mapping plugin only works if the site is installed in /. This is a limitation of how virtual servers work and is very difficult to work around.
という表示が出て、ログインできなくなってしまいました。
初心者ゆえ、初歩的なミスなのかもしれないのですが、どうしてもわかりません。
どのような理由が考えられるのか、ご教授願えたらと存じます。
どうぞよろしくお願い致します。
2013年4月10日 11:56 PM | K-ko |
K-koさん
私も見た事がないエラーメッセージなので、正直原因がわかりませんが、再度下記を確認してみてもらえませんか?
【サーバー側の追加ドメイン・サブドメイン設定】
全て同じルートディレクトリになっていないとマルチサイト化できません。
サーバーの設定をもう一度確認してみてもらえますか?
【マルチサイト設定】
投稿内の3の設定(wp-config.phpと.htaccessの追記)が正しくできているか、もう一度確認してみてもらえますか?
【MU Domain Mappingインストール後の設定】
sunrise.phpのコピーとwp-config.phpへの追記は正しくできているか再度確認してみてもらえますか?
【wp-config.phpの追記場所】
wp-config.phpへの編集が2回出てきますが、
/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */
という行より上に記述しなければなりません。
最後尾に追記しているなどしていませんか?
【MU Domain Mappingインストール時の他のプラグイン停止】
他のプラグインを全て停止しないと不具合を起こす事があるようです。
思い当たるところはこの辺りですが、ご確認頂き、結果をご連絡頂けるとありがたいです。
よろしくお願いします。
2013年4月11日 2:21 AM | ダンパ |
早速ご回答いただき、ありがとうございます。
一つ一つ確認をして、また結果をご報告したいと思います。
2013年4月11日 8:53 AM | K-ko |
先日質問をいたしましたK-koです。
おっしゃる通り、設置したディレクトリに問題があったようでした。
途方に暮れていたので、とても助かりました。
本当にありがとうございました。
2013年4月12日 5:19 PM | K-ko |
K-koさん
解決してよかったです。
私も同じ失敗をしましたが、このようなエラーメッセージは出た事がなかったので、勉強になりました。
サイト構築頑張ってください!
2013年4月12日 8:08 PM | ダンパ |
はじめまして。
私も超初心者なのですが、マルチサイトに挑戦し、
3. WordPressのマルチサイト設定まではできました、しかし
4. 追加サイト(サブドメイン)の登録
「サイトのアドレス」に2で設定したサブドメインを入力、「サイトのタイトル」「管理者メールアドレス」も入力し、「サイトを追加」ボタンをクリックします。
追加したサイトが正しく表示され、管理画面の「参加サイト」に表示されずに
サイトのアドレスがないか、または間違っています。
の表示になります。
1. 追加ドメインのサーバー設定
が間違ってるのか確認したのですが、手順道理に進めてるはずなので、解決方法がわかりません
どうしたらいいでしょうか?
2013年4月15日 10:08 PM | nero |
neroさん
> 追加したサイトが正しく表示され、管理画面の「参加サイト」に表示されずに
> サイトのアドレスがないか、または間違っています。
> の表示になります。
「参加サイト」には表示され、追加したサイトの表示ができないという事でしょうか?
それとも「参加サイト」の一覧にも表示されないという事でしょうか?
もし前者のような症状でしたら、6.までの全ての手順を終えないと追加サイトの表示はできませんので、全てやってみてください。
後者の場合、「サイトのアドレスがないか、または間違っています。」はどのページでしょう?表側のページでしょうか?管理画面でしょうか?また親サイトでしょうか?追加した子サイトでしょうか?
管理画面の場合、ログインページ自体が表示されない状態でしょうか?ログイン後のページでしょうか?
もう少々詳しい情報を頂けると助かります。
2013年4月15日 10:37 PM | ダンパ |
すみません質問を間違えました。
正確には
4. 追加サイト(サブドメイン)の登録
「サイトのアドレス」に2で設定したサブドメインを入力、「サイトのタイトル」「管理者メールアドレス」も入力し、「サイトを追加」ボタンをクリックしたら
サイトのアドレスがないか、または間違っています。
が表示されました。
「参加サイト」の一覧にも表示されないという形です.
質問を間違えてすみませんでした。
2013年4月15日 11:43 PM | nero |
neroさん
現象再現できました。
実在しないドメイン(サブドメイン)が存在しない時に出るエラーメッセージのようです。
1、登録しようとしたサブドメインが間違っていないか再度ご確認いただけますか?
2、入力の形式が間違っていないかご確認いただけますか?
(test.example.comの場合、入力するのはtestのみです)
12ともに間違いない場合、サーバー側にサブドメインを設定してすぐではないでしょうか?DNS情報が伝わるまで、ひどい時だと3日くらいかかることもあるようです。
こちらで確認してみてください。
http://www.mse.co.jp/ip_domain/lookup.shtml
2013年4月16日 12:26 AM | ダンパ |
>2、入力の形式が間違っていないかご確認いただけますか?
(>test.example.comの場合、入力するのはtestのみです)
をやったらできました!
ありがとうございました。
2013年4月16日 12:59 AM | nero |
neroさん
解決してよかったですね。
頑張ってください!
2013年4月16日 1:03 AM | ダンパ |
こんばんわ。
質問させてください。
サイト管理者にログインいようとすると、このページにアクセスするための十分なアクセス権がありません。
サイトのログインページににアクセスするとThe domain mapping plugin only works if the site is installed in /. This is a limitation of how virtual servers work and is very difficult to work around.とでます。
原因はsite.comというドメインにblog.site.comというサブドメインをドメインマッピングした為と思われますが、削除しようにも管理画面に入れないため途方に暮れてます。
何かいい方法はないでしょうか?
2013年9月20日 1:11 AM | さとし |
さとし様
ご返信が遅くなり、大変申し訳ありませんでした。
(通知が迷惑メールに行ってしまっていたようでした)
もう解決しているかもしれませんが、念のため。
まず、MySQLにログインして、データベースから直接削除してみてはいかがでしょうか?
確か「sites」とかのテーブルだったと思います。
また、もっと簡単なのは、パソコンのhostsファイルを編集して、blog.site.comに無理やり向けてみてはどうでしょう?
こちらを参考にしてみてください。
http://negiwatch.jugem.jp/?eid=54
2013年9月26日 5:08 PM | ダンパ |
こんにちは。
役に立つ投稿有難うございます。幾つか気になったので…。
1.本文中「WordPressの管理画面にログインします。すると、左メニューの「設定」に「ネットワーク設定」が現れます。」の「設定」は今のWP3.8ではツールになってますかね。
2.本文中 define( ‘SUNRISE’, ‘on’ ); ですが、中のクォーテーションの記号が間違っています。 define( ‘SUNRISE’, ‘on’ ); コチラで認識すると思います。
他の質問者の方がおっしゃられていますが、ルートドメイン以外ですとプラグインの仕様で使えないのでインストールはロリポWEBで使える意味でのルートドメインで行うようすると解決すると思います、取り急ぎ。 (ありがとうございます、助かってます)
2014年2月5日 3:24 AM | 通りすがり |
通りすがりさん
コメントありがとうございます。
>1.
私も3.8にバージョンアップして確認しましたが、左メニューにツールが表示されるのは子サイト側ではないでしょうか?ネットワーク管理者側では、3.8以降も「設定」で間違いないようですが。。
>2.
ご指摘ありがとうございます。Wordpressの自動置き換え機能が働いてしまっていたようです。修正いたしました。
このプラグインはルートドメイン以外では使えないんですね。これは試していなかったので知りませんでした。ありがとうございます。
今後も何かお気づきの点がありましたらよろしくお願いします。
2014年2月5日 8:41 AM | ダンパ |
トラックバックURL