お名前COMの共用サーバーからエックスサーバーに引っ越し作業を実施しました。
数多いサイトを引っ越ししました。
この中でワードプレスのマルチサイトがあったのですが、とってもハマったので備忘録を兼ねて残しています。
ドメインの管理できる数は無制限とかですが、データベースの数は有限です。
エックスサーバー(X10)の場合、50個がデータベースの上限です。
なので・・・
データベースを利用するワードプレスで、ドメインとデータベースは以下のように
ドメインに対して1データベースを割り当てるようにしています。
example1.com => データベース1
example.com =>データベース2
sub1.example.com =>データベース2
sub2.example.com =>データベース2
example2.com =>データベース3
お名前COM、さくらサーバー、ロリポップ、エックスサーバーなどには、ワードプレスを簡単にインストールできるツールが備わっています。
データベースとドメインが1対1の場合、簡単インストール系がとても簡単です。
データベースとドメインが1対Nの場合、簡単インストール系は使えなかったりします。
エックスサーバーは、手動インストールする必要がありました。
1つのデータベースで複数のワードプレスサイトを管理する仕組み
ワードプレスのwp-config.phpに「 WordPress データベーステーブルの接頭辞」設定があります。
通常デフォルトは、下記のようにwp_になっています。
$table_prefix = 'wp_';
1つのデータベースで複数のワードプレスサイトを運営する場合、このwp_を別々の名前で指定することで対応可能です。
example.com => $table_prefix='wp_';
sub1.example.com => $table_prefix='wp1_';
sub2.example.com => $table_prefix='wp2_';
$table_prefixは、以下のようにテーブル名として利用されます。
- wp_commentmeta
- wp_comments
- wp_links
- wp_options
- wp_postmeta
- wp_posts
- wp_termmeta
- wp_terms
- wp_term_relationships
- wp_term_taxonomy
- wp_usermeta
- wp_users
wp_の部分を変えることで、1つのデータベースで複数のサイトが管理できるようになっています。
ワードプレスって便利ですよね!
お名前COMからエックスサーバーへ引っ越しする際のハマりやすい3つのポイント
ワードプレスとデータベースが1対1のサイトを引っ越す際は、
ワードプレスのエクスポート機能、インポート機能を使いました。
手順は、ざっくりと以下の通りです。
- コンテンツやメディアを1つにまとめたxmlファイルをエクスポート
- ワードプレスの設定や導入しているプラグインをメモっておく
- ==引っ越し開始 ==
- エックスサーバーのサーバーパネル>ドメイン設定から引っ越しするサイトを追加する
- お名前COMのドメインNaviでdnsを他社でns1.xserver.jp・・・ns5.xserver.jpに変更する
- エックスサーバーのサーバーパネル>自動インストールからワードプレスをインストールする
- サイトにアクセスできたら、2でメモったテーマ、プラグイン、設定などをインストール・設定する
- 1でダウンロードしたXMLファイルをワードプレスのインポート機能で取り込む
ワードプレスとデータベースが1対Nのサイトを引っ越す際、とってもハマりました。
基本的な流れとしては、お名前COM側 MySQLのエクスポート、ワードプレスサイトのフォルダをtarでまとめて転送する、あとはエックスサーバー側に適用するといった流れです。
データベース(MySQL)の引っ越しは、特にハマるポイントはなかったです。
手順としては、お名前COMにadminerをインストールしてデータベースをエクスポート、
エックスサーバー側でデータベースを作って、ユーザーを追加設定し、
phpmyadminを使ってインポートしています。
ポイント1 まさかのサブドメインの文字数制限
お名前COMでは特に意識したことがなかったんですが、
エックスサーバーのサブドメインには文字数制限があります。
制限は、30文字です。
サブドメインは30文字までに心がけましょう!
サポートにお願いしてなんとかなったりしないかなぁと思って問い合わせてみたんですが、
例外なしで、30文字まででしたorz。
ちなみにオーバーしたサイトはそのままでは引っ越しできません。つまりサブドメイン名の変更になります。・・・
ポイント2 403 Forbidden、さらに真っ白なトップページ
わかるととっても簡単でしたが、難問でした・・
お名前COMでtar cvf サイト.tar.gz ./サイトでまとめたファイルを
エックスサーバーで展開しました。
パーミッションが変なんです!
どこで変になったのか、ちょっと不明なんです(※1)が、
ファイル、ディレクトリともにgroup/othersの読み込みパーミッションがなくなっていました。
なので、以下コマンドでサッっと設定しなおしたらアクセスできるようになりました。
ディレクトリのパーミッションを一括設定
find . -type d -exec chmod 755 {} +
ファイルのパーミッションを一括設定
find . -type f -exec chmod 644 {} +
どちらのコマンドもとっても便利ですよ^^。これの意味を調べてわかればきっと立派なLinuxerですね
(※1)卵が先か、鶏が先かの問題になりますが、同じドメインで引っ越しする場合、エックスサーバー側で事前準備がしにくかったりします。
ドメインを設定しないとフォルダが作られないとかありますからね
そこで、あらかじめフォルダを作って、事前準備万端で引っ越し作業をしました。
エックスサーバーのサーバーパネルからドメインを追加した後に準備したwordpressのフォルダをmvしたりする作業をしています。
準備していたタイミングでは特にパーミッションの問題はなかったはずですが、アクセスできるようになったタミングではパーミッションがおかしかったです。
ポイント3 お名前COMのウェブ設定>かんたんブログインストールしたワードプレスの引っ越し
かんたんプログラムインストールしたワードプレスサイトは、
サイト/wp/などwpフォルダがひつようだったり、
4.2.2-ja-jetpackなどが適用されていますよね。
wpフォルダのまま以降したい方は、このポイントは当てはまりません。
ここではwpフォルダからの脱却、jetpack未使用のサイトに引っ越しする方に最適です。
データベースの引っ越しができている状態の場合、コンテンツやワードプレスの設定はデータベースに含まれています。
これ以外に最低限必要なのは、ワードプレスの本体、適用していたテーマ、アップロードした画像ファイルなどです。
ポイント3としては、wpフォルダからの脱却に伴い、データベースを編集が必要です。
wpフォルダがない状態で、wpフォルダにアクセスするため表示されないサイトになります。
エックスサーバーのphpmyadminで、
wp_optionsテーブルのsiteurl、home項目にwpがある場合、
wpをなくすように設定してください。
ポイント4 エックスサーバーに簡単引っ越し!サブドメインの設定手順
名前COMのサブドメインは、~/sub1.example.comのような構成で作られます。
エックスサーバーのサブドメインは、~/example.com/public_html/sub1/のような構成になります。
比較ではあまり語られない部分で、結構ちがったりしますね・・
サブドメインの設定手順は以下の通りです。
- サーバーパネルからサブドメインを追加する
- sshでエックスサーバーのsub1フォルダにアクセスします。
% cd ~/example.com/public_html/sub1
- ワードプレスの最新版をダウンロード&展開
% curl -O https://ja.wordpress.org/latest-ja.tar.gz
wordpress latest-ja.tar.gzをwordpressディレクトリを除いて展開する方法
これとっても便利です。忘れないように覚えておくと使いどころ満載です。% tar --strip-components 1 -xvf latest-ja.tar.gz
--strip-components 1で、latest-ja.tar.gzにふくまれているwordpress/の部分を除去して展開してくれます。 - ワードプレスの設定
% cp wp-config-sample.php wp-config.php
% vi wp-config.php
データベースの設定、テーブルプレフィックスを適切に設定してくださいね。
あなたの環境に従って最低限修正・見直しが必要な項目は以下5つです。
DB_NAME、DB_USER、DB_PASSWORD、DB_HOST、$table_prefix = 'wp_';% vi .htaccess
最低限ワードプレスのデフォルト設定をしておきましょう!
.htaccessに以下のような記載がなかったら追加してくださいね。
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPressポイント5 tarでシンボリックリンクも含めちゃう お名前COMのウェブ設定>かんたんブログインストールしたワードプレスの引っ越し
お名前COMはSunOS系なので、標準コマンドがgnuでなかったりします。
そのため、tarコマンドなどはgzファイルに対応していないです。
それでも、シンボリックリンクを展開した状態でまとめるオプションhは有効です。% tar cvfh files/xx.tar ./example.com
とhを指定することでシンボリックリンクを展開してtarファイルにすることができます。
tar.gzにするためには、以下コマンドを打ち込みます。% gzip files/xx.tar
これでfilesフォルダにxx.tar.gzが作成されます。
このファイルの中には幾つか不要なファイル、お名前COM特有の設定情報が含まれます。
エックスサーバーで展開後、さくっと削除してください。
不要ファイル・フォルダは以下です。
kantan-cgi(ディレクトリごと削除)
.phpまとめ
同じドメインのまま、お名前COMからエックスサーバーに引っ越しした際、はまった5つのポイントをできるだけわかりやすいよう説明しました。
エックスサーバーでドメインを追加して、お名前comのドメインナビで他社を指定した際、すぐに反映されるパターンと、3時間くらい反映までに時間がかかるパターンがありました。
引っ越しする際は、普段アクセスが少ない時間帯に引っ越しするのが良さそうです。
お名前COMの共用サーバーでドメイン削除してないよね?!って疑問に思っている方もいるかもしれません。
この状態でもエックスサーバーには引っ越しできています。
あとあと問題があるかもしれませんが、削除してしまうと、実体ファイルも削除されてしまうので、過去の設定が見えなくなったりします。
利便性をとってこのような手順にしています。
技術的なポイントとしては、tarの--strip-componentsが結構使えるとおもっています。
お名前COMのドメインとフォルダの関係は結構好きです。
ドメイン、サブドメインがlsで一覧できるのがとってもよかったです。
ロリポップのフォルダ構成はちょっと苦手です。
初期ドメインの下に配置される感じです。
エックスサーバーは、ドメイン毎にフォルダが設定されるのでドメイン視点ではシンプルです。
自由度が高いのは、さくらサーバーです。自分で任意のフォルダ指定できちゃうので、ほんと奔放ですよ^^
これからレンタルするなら、このサーバーひとつで満足できるはずです。
性能・速度・サポートに満足しているからおすすめできます!
- 初期費用0円(2022年8月4日に撤廃)
- 安定したサイト運営が可能(CPU/メモリ リソース保証 6コア/8GB〜)
- 契約中は独自ドメインつき 独自ドメイン永久無料特典があります
- 最大10日間無料で、サーバーのお試し利用ができます
- ディスクキャッシュも高速 NVMe SSDを採用(300GB〜)
- 大量アクセスでも安心 転送量は無制限
【このカテゴリーの最新記事】-
no image
-
no image
-
no image
-
no image