PowerCMS™
2025年1月1日購入分よりライセンスの価格を改定いたします。
[ブログ] PowerCMS 6 でのアップデートまとめ を追加しました。
[よくあるご質問] システムログに「タスクを実行するために必要なロックを獲得できませんでした」というログが残っている を追加しました。
[よくあるご質問] 特定のシステムログに絞って確認できますか? を追加しました。

PowerCMS ブログ

ホーム > PowerCMS ブログ > 技術情報 > Copy2PublicPlus プラグインで2台の公開サーバーにコンテンツを同期する

2017年11月20日

Copy2PublicPlus プラグインで2台の公開サーバーにコンテンツを同期する

PowerCMS の ステージングサーバー連携機能 はサポートにてお客様から頻繁にお問い合わせ頂く機能の一つです。 この記事では負荷分散などを目的に2台の公開サーバーにコンテンツの同期を可能にする Copy2PublicPlus プラグインついて解説します。

ステージングサーバー連携機能.png

想定する構成

例としてCMSサーバー上の環境は次表の構成を想定します。

ウェブサイトパス ドメイン
CMS環境 /var/www/cms cms.example.com
ステージ環境 /var/www/stage stage.example.com
公開環境 /var/www/html release.example.com

また、リモートサーバー上に存在する公開環境は次表の構成を想定します。

ウェブサイトパス ドメイン FTPサーバー名
公開サーバー1 /home/htdocs www.example.com ftp.example.com
公開サーバー2 /home/htdocs www.example.com ftp2.example.com

Copy2Public の設定

Copy2Public の設定は ステージングサーバー連携機能 初期設定例 | PowerCMS ブログ の「例2. 公開環境とステージ/CMS環境とが別サーバー上に存在するケース」をご参照ください。

Copy2PublicPlus の設定

Copy2PublicPlus の設定項目は Copy2Public のFTP/SFTP転送設定を抜き出したような構成になっています。Copy2Public と同様に2台目の転送先のFTP/SFTP/FTPS設定を行います。

項目 補足
サーバー名 ftp2.example.com 公開環境のFTPサーバー名を指定
ユーザー名 username 公開環境のFTPアカウント名を指定
パスワード password 公開環境のFTPパスワードを指定
アップロードディレクトリのパス /tmp/updir zipファイルとファイルリストの転送先ディレクトリのフルパスを指定。リモートサーバー上のパスであることに注意。

Copy2PublicPlus設定画面.png

注意事項

Copy2PublicPlus は 転送先サーバーの公開環境のパスの設定がありません。その設定は Copy2Public の設定値を用います。そのため、公開サーバーの1台目と2台目の公開環境のパスは同じである必要があります。

また、Copy2PublicPlus は Copy2Publc による1台目の公開サーバーへのコンテンツ同期が終わった後に2台目の公開サーバーへの同期をスタートします。 そのため、

  • 各公開サーバーにタイムラグなしにコンテンツを同期したい
  • 3台以上の公開サーバーへのコンテンツ同期を行いたい

といったご要望がある場合には Copy2PublicPlus ではなく、lsyncd を使ったサーバー間のコンテンツ同期を行うことをおすすめいたします。 詳しくは次の記事をご確認ください。

複数サーバー構成のファイル転送にはlsyncdが便利です | PowerCMS ブログ

Movable Type + PowerSync + Copy2PublicPlus

Movable Type に ステージングサーバー連携機能を組み込めるプラグイン PowerSync においても Copy2PublicPlus プラグインを同梱しており、本記事と同様の設定で Copy2PublicPlus を用いて2台の公開サーバーにコンテンツを同期させることができます。是非ご利用をご検討ください。


カテゴリー
PowerCMS 4
サポート
プラグイン
技術情報

Recent Entries