CPIの特徴の一つとしてSmartRelease(スマートリリース)があります。CPIのレンタルサーバーにはテストサイトと公開サイトの概念があり、スマートリリースを使うことでウェブサイトの管理が容易となります。スマートリリースの詳細については こちら を参考にしてください。
ここではスマートリリースとWordPressとの連携を紹介します。
CPIは他のレンタルサーバーと異なり、テストサイトと公開サイトの領域が別々に用意されています。アクセスを制限するテストサイトで動作確認を行った後、ワンクリックで公開サイトへ反映(同期)させることができます。
データベースの同期機能はないため、基本的に両サイトで同じデータベースを共有することになります。もちろん、テストサイトと公開サイトとでデータベースを別けることは自由です。その場合、手動または何かしらの方法でデータベースの同期が必要となります。
他にも強力なバックアップ機能を備えています。30世代分(データベースは10世代分)の自動バックアップに対応しています。スマートリリースが不要であっても、バックアップ機能はトラブル時に役立つことでしょう。
WordPressの導入にはインストール補助機能を利用しましょう。後述するように手動でのインストールも可能ですが、少し注意が必要です。補助機能を利用すれば問題が発生しません。
ここではスマートリリースによる管理を前提とするため、テストサイトにインストールします。テストサイトの準備が終われば、ワンクリックで公開サイトへ反映させることができます。
あくまでも補助機能なので「インストールファイルの配備」と「データベースの作成」のみ実行されます。これ以降の作業は手動インストールと変わりません。
それではインストール作業を続けましょう。指定された「URL」をクリックします。
wp_
のままで構いません。
サイト情報と管理者アカウントを登録します。下記を参考に入力してください。
項目 | 説明 |
---|---|
サイトのタイトル | ウェブサイトのタイトルとして表示されます。ダッシュボードでの「サイトのタイトル」に利用されます。 |
ユーザー名・パスワード | 管理者アカウントとなります。ダッシュボード(WordPressの管理ツール)へのログインに必要な情報なので、メモを残しておきましょう。 |
メールアドレス | 管理者のアドレス以外に、コメント、トラックバック、ピンバック、アップデートなどの通知にも利用されます。パスワードを忘れた際の手続きにも利用するので、有効なアドレスを入力します。 |
検索エンジンでの表示 | チェックすると検索エンジンのクローリング 対象外 となります。テストサイトなど公開したくない場合はチェックします。ただし、チェックしても完全に検索結果から除外されるわけではありません。 |
間違いがなければ「WordPressをインストール」をクリックします。
これで「テストサイト」にWordPressがインストールされました。
それではスマートリリースを利用して公開サイトへ反映させてみましょう。
これでテストサイトが公開サイトへ反映されました。公開サイト(ここではexample.com)へアクセスしてみましょう。
公開サイトにアクセスするとテストサイトと全く同じコンテンツ表示されます。同じデータ(データベースを含む)を参照するので当然です。
しかし、すぐにおかしなことに気がつくでしょう。ページ内のリンク先が全てテストサイトのURL「○○.smartrelease.jp」となっています。データベースを共有するため、以下のURL設定がテストサイトのままになっているためです。
これに対応するには、「WordPressアドレス」と「サイトアドレス」を修正する必要があります。しかし、テストサイトと公開サイトでデータベースを共有するため、どちらにも対応できるようにする必要があります。
phpMyAdminでテストサイトのURLに関連するデータを確認してみましょう。テストサイトのURLに含まれる「smartrelease.jp」を検索します。
初期状態でURLに関係するデータは、「wp options」と「wp posts」にあります。修正が必要となるのは「wp_options」の「siteurl」と「home」です。これらがダッシュボードでの「WordPressアドレス」と「サイトアドレス」になります。
「wp_posts」の「guid」は修正不要です。ここの文字列は識別のために利用されるだけであり、URLに意味はありません。WordPressの公式サイトでもそのように説明されています。
GUID は絶対に変更してはなりません。ドメインを変更しても、新しいアドレスに移動したとしても投稿はやはり同じ投稿です。新しい URL のフィードを読み込んだフィードリーダーは過去にユーザーが投稿を読んだかどうか認識する必要が有るため、GUID は同じものに保つ必要があります。 どんな状況においても、GUID カラムの内容は絶対に変更しないでください。
サイト URL の変更 - WordPress Codex 日本語版
テストサイトと公開サイトでデータベースを共有するため、データベースを修正するのはトラブルの元です。WordPressにはこのような場合に対処可能な手段が提供されています。
公開サイト側の「wp-config.php」に以下を記述してください。
define('WP_HOME', 'http://'.$_SERVER['HTTP_HOST'].'/wp');
または、define('WP_HOME', 'http://example.com/wp');
define('WP_SITEURL', 'http://'.$_SERVER['HTTP_HOST'].'/wp');
または、define('WP_SITEURL', 'http://example.com/wp');
「example.com」は環境に合わせて変更してください。
こちらの設定が優先的に参照され、データベースの値(siteurlとhome)は無効となります。
define('WP_HOME', 'http://example.com/wp');
define('WP_SITEURL', 'http://example.com/wp');
とした場合、リリース機能で上書きされると困ります。そこで、「除外リスト」機能で同期対象から外します。
これで「wp-config.php」が同期対象から外れ、テストサイトと公開サイトで個別に管理されることになります。
設定にもよりますが、リリースすると公開サイトのデータが上書きされ、テストサイトにないデータは削除されます。
スマートリリースを利用する限り、公開サイトにしかないデータは存在しないはずですが。同期時にうっかり削除されても焦る必要はありません。毎日深夜に自動バックアップが実行されていることもありますが、リリース時にもバックアップが実行されます。
バックアップファイルのダウンロードやリストアに対応しているため、リリース時の心配は不要です。これは「ファイル転送(公開サイトからテストサイトへの同期)」も同様であり、バックアップが実行されます。
リリース時は公開サイトのバックアップ、ファイル転送時はテストサイトのバックアップが実行されます。つまり、上書きされる側がバックアップ対象となります。
インストール補助機能を利用しないインストール方法です。「データベースの作成」と「インストールファイルの配備」を行えば、後の手順は補助機能を使った場合と同じです。
WordPress用のデータベースを作成します。
これでWordPress用のデータベースが作成されました。
ここでは独自ドメイン「example.com」にWordPressをインストールします。インストールディレクトリとドメイン(URL)の関係は以下の様になります。
CPIの仕様上、全てのドメインが同じディレクトリ構成となり、ドキュメントルートは「~/html」となります。テストサイト(○○.smartrelease.jp)も同じです。
ドキュメントルート直下「~/html」ではなく、WordPress専用ディレクトリ「~/html/wp」にインストールします。Zipファイルを展開すると wordpress
という名称のフォルダが生成されるため、wp
に変更して、「~/html」にアップロードします。正しくアップロードされると図のような構成となります。
インストールディレクトリは慎重に決定しましょう。後から変更することも可能ですが、サイトの作りによってはデータベースやコンテンツの大幅な修正が必要となります。
WordPressはファイル数が多く、展開してからアップロードすると非常に時間がかかります。PHPの知識があるならサーバー側でダウンロードと展開を行うスクリプトを作成すると効率的です。時間に余裕があるなら展開後にアップロードしても問題ありません。
ウェブブラウザで「http://example.com/wp/」へアクセスします。これ以降の作業はインストール補助機能による導入で説明した内容と同じです。
手動でインストールした場合、WordPressのパーマリンク設定を変更すると、このようなエラーが発生してサイトにアクセスできなくなります。解決するには「.htaccess」に以下のパラメータを追加してください。
Options +SymLinksIfOwnerMatch
インストール補助機能を利用した場合、自動的にこのパラメータが設定されます。
スマートリリースやWordPressとは無関係ですが、例えばPHP7を適用する場合、.htaccessに以下の記述を追加します。当たり前ですが、他のバージョンの記述があれば削除(またはコメントアウト)しておきます。詳しい説明は公式サイトにあります。
AddHandler x-httpd-php70 .php
スマートリリースは全く同じ環境でテストサイトを用意できるため、基本的に「テストサイトで動作すれば、公開サイトでも問題がおきない」という特徴があります。なぜなら、PHPのバージョンは意図的に変更しなければ同じであり、データベースも同じものを参照します。同じサーバー上にあるため、他のソフトウェアのバージョンも統一されます。少し敷居の高いテストサイトを簡単に導入できることが、CPIの大きなメリットでしょう。
ただし、スマートリリースも万能ではありません。すでに説明しましたが「URL(ドメイン)」の取り扱いには気を付ける必要があります。それさえ気を付けていれば、安定したサイト運営の強力な武器となってくれるでしょう。