PowerSync を使って、CMS とは複数の別のサーバーへ同期することはできますか?
はい、可能です。ただし、いくつかの制限事項があります。
前提条件
- 下記図の A / B / C の各サーバーはリモートサーバであり、CMSサーバの仮想環境ではありません。
- Aサーバ:CMSサーバ(CMS がインストールされている環境です)
- Bサーバ:ステージングサーバ(CMS はインストールされていません)
- Cサーバ:本番サーバ(ユーザーが閲覧する環境で、こちらも CMS はインストールされていません)
パターン1
CMSサーバから、ステージング用の Bサーバへ同期して確認。ステージングサーバで確認したあと、本番の Cサーバへ同期
この場合、PowerSync を使って同期できるのは CMSサーバから、ステージングサーバまでです。
Bサーバに PowerCMS が入ってないためその先の同期は PowerSync では行えません。
rsync など PowerSync 以外のツールを併用する、もしくは Bサーバにも PowerCMS をいれて PowerSync を利用することで実現は可能です。
Bサーバにインストールする場合は、こちらの分のライセンスが追加で必要になります。
パターン2
CMSサーバから、ステージング用の Bサーバへ同期して確認。ステージングサーバで確認したあと、CMSサーバから本番の Cサーバへ同期
この場合、B / C 両方サーバへの PowerSync を使って同期できますが、タイミングをずらすことはできません。
Bサーバで確認したあとに、違うタイミングで Cサーバへ同期するということはできません。
こちらの設定等は「Copy2PublicPlus プラグインで2台の公開サーバーにコンテンツを同期する」でご説明しています。
パターン2 の解消法
ステージングと本番に同時に同期されては意味がないので、別のタイミングで同期をしたい場合は、同期用のスペースを複数用意することで、可能になります。
B スペースで同期を行うとB サーバーへアップロードされます。
C スペースで同期を行うとC サーバーへアップロードされます。


