複数ドメインを取得して、それぞれのドメインへWordPress導入時に気を付けることを記載します。
というか自分がミスって、ハマってしまったので、備忘を兼ねて記載します。
ちなみに、レンタルサーバはロリポップを使用しており、以下のロリポップレンタルサーバでの出来事です。
【事象】
新ドメイン(新サイト)にWordPressを導入したら、元々稼働していたサイトが表示されなくなった。
元々のサイトのURLにアクセスすると、新サイトの内容が表示されるようになった。
元々稼働していたサイトの管理画面 (https://元のサイト/wp-admin)にアクセスすると、新サイトの管理画面へリダイレクトされる。
(あーやっちまったなー、適当にやりすぎたな。。。)
【調査】
とりあえず、データがまず残っているか確認ということで、ロリポップの管理画面からデータベースにアクセスし、 「テーブル接頭辞_posts」というテーブルを確認すると、これまで書いた記事は残っているので、情報は残っていることは確認できた。
後から作成した新サイト側にWordPressを導入したときに、何かのファイルを更新してしまったと考え、今度は管理画面からFTP接続をして、書き換えられてそうなファイルを確認する。
【原因】
私はロリポップのレンタルサーバを使用してますが、 ロリポップのレンタルサーバはロリポップのログインユーザ名のフォルダを各ユーザのコンテンツ配置するルートディレクトリとしているようです。
複数ドメインを作成しても、このルートディレクトリとなるフォルダは、 ロリポップのログインユーザ名 がデフォルトになるので、複数ドメインを使用する場合は公開するフォルダをドメイン毎に分けてあげる必要がある。
私は、ドメイン名が違っているのでルートディレクトリも違っているのだろうと勝手に思い込み、公開フォルダを変更しませんでした(何も指定しませんでした)
その状態でWordPressを導入したものだから、元々稼働していたサイトの設定ファイルなどを書き換てしまい、元々のサイトにアクセスできなくなった。
ルートディレクトリ直下にある、「wp-config.php」ファイルの中に指定されているデータベースの情報が、あとから作成したサイト側にWordPressを導入したときに指定した情報になっていたのが原因と思われる。
【対応】
①なので念のため、ロリポップの管理画面から 「テーブル接頭辞_posts」というテーブル をエクスポートする(画面にエクスポートボタンがあるのでそれを押してファイル名を指定して保存するだけ、もし復活できなくなった場合、記事の内容だけでもバックアップあれば復旧の手間が多少楽になると考え)
②まず、後で作成した、新サイトのドメイン情報はいったんロリポップの管理画面上で削除を実施する。(つくったばっかりで特に残したい情報もなかったので削除)
③ルートディレクトリ直下にある、「wp-config.php」ファイルをロリポップの管理画面のFTPからダウンロードしてきて、バックアップを取得する。
④ファイル書き換えるために、書き込み権限の付与し(チェックボックスとかで書き込み権を付ける)
⑤以下のファイルのデータベース情報(XXXXXとなっている箇所)を、元々稼働していたサイトのデータベース情報に書き換える
/** WordPress のためのデータベース名 */
define('DB_NAME', 'XXXXX');
/** MySQL データベースのユーザー名 */
define('DB_USER', 'XXXXX');
/** MySQL データベースのパスワード */
define('DB_PASSWORD', 'XXXXX');
/** MySQL のホスト名 */
define('DB_HOST', 'XXXXX');
WordPress データベーステーブルの接頭辞
$table_prefix = 'XXXXX';
⑥ 修正したwp-config.phpファイルを同じフォルダにアップロードする(管理画面から実施)
⑦④で変更した書き込み権を外す(元の権限に戻す)
以上の対応をすると、元のサイトが表示されるようになりました。内容は大したことがないとは言え、消えると悲しくなります、なんとか無事元に戻ってよかった。
最悪、1から作り直しも覚悟しましたが。。。よかったよかった