Mirroringプラグインは、ウェブサイトを外部サーバーへミラーリングする機能を提供します。
ミラーリングにはLFTPを利用するため、差分アップロード、更新・削除されたもののみを対象にミラーリングすることができ、高速に反映することが可能です。 通信プロトコルは、SFTP/FTPをサポートします。また、ローカルディスク上のステージング領域にファイルを同期した後に外部サーバーへミラーリングする運用もサポート。未来日時の完全なサイトプレビューを実現する LivePreview機能とあわせて、IR情報などの安全な運用管理を実現します。
スコープ毎に最大5箇所までのミラーリングが可能です。
※ 指定可能なパス(前方一致)を環境変数「mirroring_staging_root_path」にカンマ区切りで指定してください。
※ mirroring_staging_root_path の指定値がない時、この項目は表示されません。
※ 「削除の同期」「隠しファイル」「除外条件」についての設定は「同期先の設定(1)」が使われます。
Host www.powercmsx.jp
HostName www.powercmsx.jp
User pcmsxuser
Port 22
IdentityFile 鍵ファイルのパス
/usr/local/bin/lftp -u pcmsxuser,**************** -p 22 -e 'mirror --verbose=3 --only-newer -R --delete --exclude=^\. --exclude=^powercmsx/ --exclude=^assets/ [サイト・パス] /var/www/htdocs;quit' sftp://www.powercmsx.jp
CMS環境のサイトURLと転送先サーバーのURLが異なる時、HTML内のリンク・パス情報を相対パスに変換する必要があります。以下のいずれかの方法で行うことができます。
1.relativeモディファイア(ルート相対パスに変換)
<mt:websiteurl>, <mt:entripermalink> などのURLを出力するタグに対しては、relativeモディファイアが利用できます。
<mt:websiteurl relative>
2.regex_replaceモディファイア(正規表現)
ソース全体もしくは特定のブロックを対象に置換する場合は、以下のようにすることで、ルート相対パスに変換することができます。
<mt:setvarblock name="search_url">/<mt:websiteurl regex_replace="'#^(https?://[^/]+/).*$#','\$1'" preg_quote="/">/</mt:setvarblock>
<mt:for regex_replace="'$search_url','/'">
〜
</mt:for>
もしくは、
<mt:setvarblock name="search_url">/(\s+(?:src|href|action)\s*=\s*["']?)<mt:websiteurl regex_replace="'#^(https?://[^/]+/).*$#','\$1'" preg_quote="/">/</mt:setvarblock>
<mt:setvarblock name="replace_url">\$1/</mt:setvarblock>
<mt:for regex_replace="'$search_url','$replace_url'">
〜
</mt:for>
3.Abs2Rel プラグインを利用する
Abs2Rel プラグインを有効化すると、自動的に URLや絶対パスをファイルを起点とした相対パスに変換します。プラグイン設定でスコープ毎に有効・無効を指定できます。