※ この機能はアドバンスト版以上のライセンスをご購入の場合のみご利用可能です
サーバー配信機能とは
サーバー配信機能とは、PowerCMS で生成したコンテンツはもとより、ウェブサイトやブログのサイトパス以下のファイルとディレクトリを、外部のサーバーと同期する機能です。公開するサーバーに PowerCMS をインストールしなくても、コンテンツを公開することができるため、公開サーバーとアプリケーション・サーバーを分離することができます。サーバーを分離することで、アプリケーション・サーバーへの不正アクセスなどのセキュリティリスクを低減することができます。
コンテンツの配信先には、ブログ・ウェブサイト単位で複数の配信先を指定できます。
本機能は、PowerCMS アドバンスト版で利用可能です。 本機能を利用するには環境変数 EnableSyncPack の設定が必要です。
利用できる配信方法
PowerCMS Advanced では、FTP(s) と rsync が利用できます。rsync による配信を利用する場合は、rsync オプションをインストールする必要があります。rsync オプションをご希望の場合にはサポートまでお問い合わせください。
配信対象となるファイルやディレクトリ
サーバー配信では、PowerCMS で管理されているファイル(アップロードされたファイルや、再構築時に生成されるファイル)以外にも、選択されたウェブサイト又はブログのサイトパス以下のファイルやディレクトリがすべて配信の対象となります。また、通常は前回のサーバー配信が実行されたあとに更新(作成、削除、変更)されたファイルやディレクトリのみが配信されるため、2回目以降の処理に掛かる時間は大幅に短縮されます。(すべてのファイルを改めて配信し直すオプションもあります)
配信される HTML ファイルに含まれている URL (サイト URLと同じ URL のみ)は、/ で始まる相対パスに自動的に置換されます。
サーバー配信の活用例
複数の公開サーバーとコンテンツを同期させる
コンテンツを公開するサーバーを、複数用意してアクセス分散を行なうケースがあります。サーバー配信機能では、複数の配信先の情報を登録することができるので、NFS などを利用しなくてもコンテンツを各公開サーバーに配信するということができます。
ステージング環境として利用する
PowerCMS アドバンスト版の サーバー内に出力されたコンテンツを、公開前の事前確認用途に利用することができます。これにより、公開前に表示内容の確認をおこなって、問題がなければ公開する。ということができます。
サーバー配信の設定
新しい配信先を登録する
- ページ上部のナビゲージョンから ウェブサイトあるいはブログ を選択する
- サイドメニューから [設定] - [サーバー配信] を選択する
- [新しいサーバー配信設定を作成する] をクリックする
設定名、サーバー配信設定、配信方法を設定する
- 設定名
- 任意の設定名を入力します
- サーバー配信設定
- サーバー配信を予約実行する場合、以下の項目を設定します
- サーバー配信日時
- サーバー配信を実行する日時を設定します
- 配信結果の通知先メールアドレス
- サーバー配信の処理が終了すると、指定されたメールアドレスに処理結果を通知します
- 配信に失敗したときだけ受け取る。
- チェックを有効にすると、配信に失敗した場合のみ通知メールが送信されます
- 配信方法
配信先の情報を複数登録できます。FTP(s) の設定は以下のとおりです。rsync を利用する場合は、こちらをご覧ください。FTP(s) による配信は、差分配信方式となり、前回の配信実行後に増減した配信元のファイルとディレクトリだけが配信されます
- 配信方法
- "FTP" を指定します。
- FTP サーバー
- 配信先のサーバーのアドレスを入力します。
- FTP サーバーのポート
- 配信先の FTP サーバーのポート番号を入力します。通常は 21 です。
- SSL
- 有効にすると、FTP サーバーとの接続に SSL を利用します。(FTPS で通信を行います)
- ユーザー名
- 配信先の FTP サーバーのユーザー名を入力します。
- パスワード
- 配信先の FTP サーバーのユーザーのパスワードを入力します。
- 開始ディレクトリ
- 配信先のサーバーで、コンテンツを配置するディレクトリを指定します。ディレクトリは、配信先のサーバー上のパスではなく、FTP ユーザーのホームディレクトリからのパスを指定します。
- 入力した後、[変更を保存]をクリックする
登録されている配信先を複製する
すでに登録されている設定を複製して、新しい設定を追加することができます。予約配信を複数設定する場合に便利です。
- ページ上部のナビゲージョンから ウェブサイトあるいはブログ を選択する
- サイドメニューから [設定] - [サーバー配信] を選択する
一覧から複製する設定を探して、設定名をクリックして編集画面に移動する
[このサーバー配信設定を複製する]をクリックする
- 複製された設定が、編集状態で表示されるので、設定内容を適宜変更する
- 修正が終わったら、[変更を保存]をクリックする
登録されている配信先を削除する
- ページ上部のナビゲージョンから ウェブサイトあるいはブログ を選択する
- サイドメニューから [設定] - [サーバー配信] を選択する
- 一覧から削除する設定を探して、チェックボックスをチェックする
- [削除]ボタンをクリックする
サーバー配信の実行
サーバー配信を実行する方法は、以下の2種類があります。
決められた日時に実行する
サーバー配信の設定で指定された日時に、配信が実行されます。サーバー上で、run-periodic-tasks が動作するように設定されている必要があります。通知設定を行っている場合、実行結果をメールで受け取ることができます。
毎週決まった曜日に実行するなどの定期実行はできません。
今すぐ実行する
配信先に対して、サーバー配信をただちに実行します。処理はリアルタイムで実行されるので、通知メールは送られません。
すべてのファイルを同期するオプションをチェックして有効にすると、前回の差分を配信するのではなく、サイトパス配下のすべてのファイルやディレクトリを改めて配信します。
- ページ上部のナビゲージョンから ウェブサイトあるいはブログ を選択する
- サイドメニューから [設定] - [サーバー配信] を選択する
- 実行したいサーバー配信の設定を見つけ、配信名のリンクをクリックして編集画面を開く
- [今すぐ配信する] をクリックする
- 処理経過がポップアップで表示される
サーバー配信の制限事項
以下の内容は制限事項となり、将来のバージョンでも修正の予定はありません。
- FTP(s) による配信は、配信元から配信先への一方向の同期になります。配信先にしか存在しないファイルを削除することはありませんが、配信元にコピーされることもありません。
- ダイナミック・パブリッシングや、プラグインを利用した動的コンテンツは、配信されたサーバー上では動作しません。
- コメントやトラックバックは、配信元のサーバーで動作する PowerCMS で受信することができます。ただし、受信したコメントやトラックバックが含まれたコンテンツは、配信先のサーバーに自動では配信されません。次のサーバー配信の実行時に、配信先のサーバーに配信されます。
- [mt-static] ディレクトリに含まれるコンテンツは、配信されません。