PowerCMS X ブログ

2020-03-05

図で見る、 PowerCMS X の環境構成例と同期機能

PowerCMS X の環境構成例 (構成C: 2サーバー3環境。CMS 出力環境、ステージング環境、公開環境。)

はじめに

この記事では、 PowerCMS X で利用できる環境構成の例を、図を添えてご紹介します。あわせて、環境間の同期機能をご紹介します。

PowerCMS X は、1サーバー1環境や、複数サーバー複数環境など、運用フローに合わせた構成が可能です。例えば、 CMS で記事を作成し、ステージング環境で確認し、本番環境で公開する、といった形です。環境を分けた運用とすることで、コンテンツ公開前の確認を行いやすくなります。

CMS にファイルをアップロードして管理できるため、 FTP クライアント (ファイル転送ソフト) の操作が不要です。初期設定でパスや条件を指定しておくことで、運用時の操作はシンプルになり、 CMS の管理画面上のボタンのクリックで同期が完了します。また、日時を指定した同期予約も可能です。

サーバー間で同期する「ミラーリング機能」、同一サーバー内の環境間で同期する「静的ファイルの同期機能」など、プラグインをご用意しています。

設定方法や利用方法はオンラインドキュメントに記載しておりますが、構成や設定によって、同期元・同期先・同期実行時の動作が異なるため、図を添えて整理しました。あらかじめご覧いただくことで、構成や動作イメージの参考になりましたら幸いです。

同期機能

ミラーリング機能 (Mirroring プラグイン)
  • サーバー間で同期します。
  • 同期する対象は、設定したディレクトリパス (ドキュメントルート) 全体です。
  • CMS で管理していないファイルも、同期の対象です。
  • 製品パッケージに同梱のプラグインです。
静的ファイルの同期機能 (SiteSync プラグイン)
  • 同一サーバー内の環境間で同期します。
  • 同期する対象は、設定したディレクトリパス内から選択可能です。
    管理画面上の一覧表示から、チェックボックスで選択します。
  • CMS で管理していないファイルは、同期の対象外です。 (例: サーバーに直接アップロードされたファイル)
  • 別売りのプラグインです。
  • SiteSync からミラーリング機能を利用できます。

スクリーンショット: SiteSync プラグインの「ステージングへの同期」管理画面

前提

用語

この記事で使用する用語について、次の意味で用います。

同期
特定のディレクトリから別のディレクトリへの、ファイル転送 (ファイルのコピー) を指します。
ディレクトリやファイルの新規作成、更新、削除の反映を含みます。 (設定で変更可能です。)
環境
ひとつのサイト全体を管理する単位を指します。
ドキュメントルートごとに1環境とします。 (ディレクトリパスを指定する設定欄があります。)
サーバー
CMS サーバー
PowerCMS X を設置したサーバーを指します。
CMS の管理画面を表示します。 CMS のユーザーがログインして、記事の作成、更新、削除などを行います。
公開サーバー
CMS サーバーから静的ファイルが同期される、同期先のサーバーを指します。
Web サイトを表示します。どなたでもアクセスして閲覧できる環境を、 CMS サーバーと分けたい場合に使われます。
環境
CMS 出力環境
PowerCMS X で管理しているファイルの出力先を指します。
スペースの設定の「サイト・パス」欄で、ディレクトリパスを指定してください。
ステージング環境
本番環境と同じ条件で検証を行うための環境を指します。
CMS サーバー内の同期先ディレクトリを想定しています。
バーチャルホストを設定いただき、公開前の確認に使用します。
本番環境
実際の Web サイトを一般公開するための環境を指します。
CMS サーバー内の同期先ディレクトリを想定しています。
公開環境
CMS サーバー以外に、公開サーバーを用意した場合の本番環境の名称として、説明上使用します。

設定例

仮に、次のディレクトリパス (ドキュメントルート) とドメインの設定を想定します。ご利用の構成に応じて、読み替えてください。

環境名 ディレクトリパス ドメイン サーバー
CMS 出力環境 /var/www/html cms.example.com CMS サーバー
ステージング環境 /var/www/staging staging.example.com CMS サーバー
本番環境 /var/www/production production.example.com CMS サーバー
公開環境 /var/www/public www.example.com 公開サーバー

環境構成例

PowerCMS X で利用できる環境構成例をご紹介します。

ひとつの PowerCMS X ライセンス (管理画面) でも、複数のスペースを作成すると、複数サイトを管理できます。説明上、1スペース (1サイト) の管理に絞って記載します。

構成B以降は、同期機能のご利用を想定しています。構成B、C、Fは、製品パッケージに同梱の Mirroring プラグインのご利用を想定しています。構成D、E、Fは、 別売りの SiteSync プラグインのご利用を想定しています。

例示のため、この他の構成を制限するものではありません。

構成A: 1サーバー1環境

構成A

CMS サーバー内の CMS 出力環境のみの構成です。

単一の構成であっても、「承認ワークフロー機能」を利用することで、ステータス対応「下書き、レビュー、承認待ち、公開予約、公開、公開終了」による管理が可能です。

また、「外部プレビュー機能」で、 CMS ユーザー以外へのプレビュー URL を発行し、外部の方への内容確認依頼を行いやすくすることもできます。

構成B: 2サーバー2環境

構成B

CMS サーバー内の CMS 出力環境と、公開サーバー内の公開環境、という構成です。

サーバー間の同期は、「ミラーリング機能」 (Mirroring プラグイン) を使用します。プラグインの設定画面で、「同期先サーバー」欄に公開サーバーのドメイン、「リモート・パス」欄に公開環境のディレクトリパスを設定してください。

管理画面のメニューの [ツール] - [ミラーリング] からミラーリング画面に移動し、 [実行する] をクリックすると、 CMS 出力環境から公開環境へ同期します

ミラーリング機能は LFTP を利用しており、差分 (新規作成、更新、削除したファイル) のみを対象に同期できるため、高速に反映が可能です。通信プロトコルは、 SFTP / FTP をサポートします。

同期先サーバーは、スペースごとに最大5件までの設定が可能です。そのため、さらに公開サーバーを追加して、 CMS サーバーから公開サーバー1と公開サーバー2に同期する、といった構成も可能です。

構成C: 2サーバー3環境

構成C

構成B にステージング環境を追加しました。 CMS サーバー内の CMS 出力環境ステージング環境と、公開サーバーの公開環境、という構成です。

プラグインの設定画面で、「ステージング環境のパス」欄にステージング環境のディレクトリパスを設定してください。

管理画面のメニューの [ツール] - [ミラーリング] からミラーリング画面に移動し、 [ステージング環境に同期する] をクリックすると、 CMS 出力環境からステージング環境へ同期します。 [実行する] をクリックすると、ステージング環境から公開環境へ同期します

構成D: 1サーバー2環境

構成D

CMS サーバー内のみで、 CMS 出力環境本番環境、という構成です。

同一サーバー内の環境間の同期は、「静的ファイルの同期機能」 (SiteSync プラグイン) を使用します。プラグインの設定画面で、「公開環境のパス」欄に本番環境のディレクトリパスを設定してください。

管理画面のメニューの [ツール] - [本番環境への同期] から同期画面に移動すると、 CMS 出力環境内のファイル一覧が表示されます。同期したいディレクトリやファイルを選択し、 [本番環境への同期] をクリックすると、 CMS 出力環境から本番環境へ同期します

構成E: 1サーバー3環境

構成E

構成D にステージング環境を追加しました。 CMS サーバー内のみで、 CMS 出力環境ステージング環境本番環境、という構成です。

プラグインの設定画面で、「ステージング環境のパス」欄にステージング環境のディレクトリパス、「公開環境のパス」欄に本番環境のディレクトリパスを設定してください。

管理画面のメニューの [ツール] - [ステージングへの同期] から同期画面に移動すると、 CMS 出力環境内のファイル一覧が表示されます。同期したいディレクトリやファイルを選択し、 [ステージングへの同期] をクリックすると、 CMS 出力環境からステージング環境へ同期します

管理画面のメニューの [ツール] - [本番環境への同期] から同期画面に移動すると、ステージング環境内のファイル一覧が表示されます。同期したいディレクトリやファイルを選択し、 [本番環境への同期] をクリックすると、ステージング環境から本番環境へ同期します

構成F: 2サーバー4環境

構成F

構成E と 構成B の組み合わせのような形です。 CMS サーバー内の CMS 出力環境ステージング環境本番環境と、公開サーバーの公開環境、という構成です。

SiteSync プラグインと Mirroring プラグインを使用します。説明上、環境の名称が複雑で、設定するパスにご注意ください。同期する順に設定項目を記載すると、次の通りです。

SiteSync プラグインの設定画面で、「ステージング環境のパス」欄にステージング環境のディレクトリパス、「公開環境のパス」欄に本番環境のディレクトリパスを設定してください。

Mirroring プラグインの設定画面で、「ステージング環境のパス」欄に本番環境のディレクトリパスを設定してください。「同期先サーバー」欄に公開サーバーのドメイン、「リモート・パス」欄に公開環境のディレクトリパスを設定してください。

実際に設定される際の順序としては、 Mirroring プラグインの動作確認をしてから、 SiteSync プラグインの動作確認をしてください。

管理画面のメニューの [ツール] - [ステージングへの同期] から同期画面に移動すると、 CMS 出力環境内のファイル一覧が表示されます。同期したいディレクトリやファイルを選択し、 [ステージングへの同期] をクリックすると、 CMS 出力環境からステージング環境へ同期します

管理画面のメニューの [ツール] - [本番環境への同期] から同期画面に移動すると、ステージング環境内のファイル一覧が表示されます。同期したいディレクトリやファイルを選択し、 [本番環境への同期] をクリックすると、ステージング環境から本番環境へ同期します

SiteSync プラグインの設定画面で、「本番環境への同期実行後にミラーリングを実行する」のチェックを入れた場合、 SiteSync からミラーリング機能を利用できます。この場合、 [ツール] - [ミラーリング] メニューの操作は不要となります。 [本番環境への同期] をクリックすると、ステージング環境から本番環境へ同期した後、本番環境から公開環境へ同期します

※留意事項

  • 同期の注意点として、環境のドメインが異なる場合、 HTML 内のリンク・パス情報を相対パスに変換する必要があります。詳しくはドキュメントの「相対パスへの変換」項目をご覧ください。
  • 公開サーバーで動的機能をご利用の場合、ファイルの同期機能だけでは、動的動作部分は利用できません。 (動的機能とは、フォーム、コメント、サイト内検索、会員サイト、ダイナミックパブリッシングなど、データベース接続が必要な機能です。)
    回避策は個別にご相談ください。カスタマイズ要件になる可能性があります。

なお、従来の「PowerCMS」や「PowerCMSクラウド」をご利用の場合は、別製品のため対象のプラグインが異なります。エディションをご確認の上、「Copy2Public」や「PowerSync (別売り)」プラグインの導入をご検討ください。

まとめ

PowerCMS X で利用できる環境構成の例を、同期機能とあわせて、図を添えてご紹介しました。

環境を分けることで、複数の方が作業しやすい運用が考えられます。例えば、閲覧者は公開環境で3月の公開記事を閲覧、承認者はステージング環境で4月の公開予定記事を閲覧、記事担当者は CMS 出力環境に5月の公開予定記事を作成、といった形です。

また、サーバーを分けることで、運用保守性やセキュリティを高めることが考えられます。例えば、 CMS サーバーをアクセス制限のあるネットワーク内に配置し、内容を確認したコンテンツだけを公開サーバーに同期する、といった形です。公開サーバーを用意しておくことで、 CMS サーバーの状況が、公開サイトの閲覧に影響しないというメリットがあります。 CMS のメンテナンスやバージョンアップの他、万が一 CMS サーバーがダウンした際も、コンテンツの更新は行えなくても、公開サイトは問題なく閲覧できます。

サイトの規模や、運用フローに応じてご検討ください。

設定方法や利用方法など、詳しくはオンラインドキュメントをご覧ください。

アルファサードでは、無償でご利用いただける PowerCMS X 評価版のご提供の他、ご提案への同行やお打ち合わせ、直接お伺いしての製品の実演デモのご希望もお受けしております。ご不明の点がございましたら、 PowerCMS X のお問い合わせフォームからお気軽にお問い合わせください。

カテゴリー:プラグイン | 技術情報

投稿者:kaida

ブログ内検索

アーカイブ