<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>再構築 on qwerty.work</title>
        <link>https://qwerty.work/tags/%E5%86%8D%E6%A7%8B%E7%AF%89/</link>
        <description>Recent content in 再構築 on qwerty.work</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>ja-JP</language>
        <lastBuildDate>Wed, 13 Jun 2018 20:30:02 +0900</lastBuildDate><atom:link href="https://qwerty.work/tags/%E5%86%8D%E6%A7%8B%E7%AF%89/index.xml" rel="self" type="application/rss+xml" /><item>
            <title>Mixhostで運用中のMovable Typeの再構築をCronジョブで定期的に自動で行う方法</title>
            <link>https://qwerty.work/post/2018/06/mixhost-mt-auto-rebuild-cron/</link>
            <pubDate>Wed, 13 Jun 2018 20:30:02 +0900</pubDate>
            <guid>https://qwerty.work/post/2018/06/mixhost-mt-auto-rebuild-cron/</guid>
            <description>&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://px.a8.net/svt/ejp?a8mat=2ZF6W2&amp;#43;2DQFW2&amp;#43;3JTE&amp;#43;5YJRM&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Mixhost&lt;/a&gt; のレンタルサーバーで運用しているMovable Typeの再構築をCronジョブを使って、深夜に自動的に行いたいときの方法をメモ。&lt;/p&gt;&#xA;&lt;h3 id=&#34;cronジョブに登録&#34;&gt;Cronジョブに登録&#xA;&lt;/h3&gt;&lt;p&gt; &lt;a class=&#34;link&#34; href=&#34;https://px.a8.net/svt/ejp?a8mat=2ZF6W2&amp;#43;2DQFW2&amp;#43;3JTE&amp;#43;5YJRM&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Mixhost&lt;/a&gt; の &lt;strong&gt;[cPanel]-[Cronジョブ]&lt;/strong&gt; の画面に以下のようにコマンドを登録していきます。&lt;/p&gt;&#xA;&lt;h4 id=&#34;登録例&#34;&gt;登録例&#xA;&lt;/h4&gt;&lt;p&gt;以下は**「毎日03:45分にカテゴリアーカイブを再構築」**するときのコマンド設定例です。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;blog/2018/06/13/No-00.jpg&#34; &gt;&lt;img class=&#34;gallery-image&#34; data-flex-basis=&#34;201px&#34; data-flex-grow=&#34;83&#34; height=&#34;715&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://qwerty.work/post/2018/06/mixhost-mt-auto-rebuild-cron/images/No-00s.jpg&#34; width=&#34;600&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;コマンド例&#34;&gt;コマンド例&#xA;&lt;/h4&gt;&lt;p&gt;&lt;strong&gt;rebuild-pages&lt;/strong&gt; という &lt;strong&gt;Movable Type&lt;/strong&gt; にあるスクリプトファイルを使って再構築を行います。パラメータを加えることによって部分的に指定して再構築を行うことができます。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;  再構築の内容&#xA;  コマンド&#xA;&#xA;&#xA;&#xA;&#xA;  すべて再構築&#xA;  /usr/bin/perl /home/ze****ju/public_html/domain.name/mt-folder/tools/rebuild-pages&#xA;&#xA;&#xA;  ブログ記事を再構築&#xA;  /usr/bin/perl /home/ze****ju/public_html/domain.name/mt-folder/tools/rebuild-pages --type=Individual&#xA;&#xA;&#xA;  月別ページを再構築&#xA;  /usr/bin/perl /home/ze****ju/public_html/domain.name/mt-folder/tools/rebuild-pages --type=Monthly&#xA;&#xA;&#xA;  カテゴリアーカイブを再構築&#xA;  /usr/bin/perl /home/ze****ju/public_html/domain.name/mt-folder/tools/rebuild-pages --type=Category&#xA;&#xA;&#xA;  インデックステンプレートとウェブページアーカイブを再構築&#xA;  /usr/bin/perl /home/ze****ju/public_html/domain.name/mt-folder/tools/rebuild-pages --type=index --type=Page&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt; &lt;/p&gt;&#xA;&lt;p&gt;これ以外に複数のブログがあったりする場合は&lt;a class=&#34;link&#34; href=&#34;https://www.h-fj.com/blog/archives/2014/05/27-102904.php&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;記事下の参考ページ&lt;/a&gt;にブログIDを指定する方法などが書かれています。&lt;/p&gt;&#xA;&lt;h4 id=&#34;ユーザー名とパスワードを指定したコマンドの例&#34;&gt;ユーザー名とパスワードを指定したコマンドの例&#xA;&lt;/h4&gt;&lt;p&gt;以下のように、あらかじめMTにログインする際のユーザ名とパスワードをコマンドに含めておけば、下の方にもある &lt;strong&gt;rebuild-pages&lt;/strong&gt; での事前設定が不要です。&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;/usr/bin/perl /home/ze****ju/public_html/domain.name/mt-folder/tools/rebuild-pages --user=ユーザー名 --pass=パスワード --silent その他のオプション&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&#34;cronジョブで再構築が成功した場合のメール&#34;&gt;Cronジョブで再構築が成功した場合のメール&#xA;&lt;/h3&gt;&lt;p&gt;メールアドレスを登録しておくと、Cronジョブが実行されるたびに結果のメールが届きます。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;blog/2018/06/13/No-01.jpg&#34; &gt;&lt;img class=&#34;gallery-image&#34; data-flex-basis=&#34;338px&#34; data-flex-grow=&#34;140&#34; height=&#34;426&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://qwerty.work/post/2018/06/mixhost-mt-auto-rebuild-cron/images/No-01s.jpg&#34; width=&#34;600&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;以下のメールはインデックステンプレートとウェブページアーカイブの再構築に成功した場合ですが、メールの本文に &lt;strong&gt;success&lt;/strong&gt; の文字が入ったメールが届きます。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;blog/2018/06/13/No-02.jpg&#34; &gt;&lt;img class=&#34;gallery-image&#34; data-flex-basis=&#34;682px&#34; data-flex-grow=&#34;284&#34; height=&#34;211&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://qwerty.work/post/2018/06/mixhost-mt-auto-rebuild-cron/images/No-02.jpg&#34; width=&#34;600&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;perlモジュールが足らなくて失敗した場合&#34;&gt;Perlモジュールが足らなくて失敗した場合&#xA;&lt;/h3&gt;&lt;p&gt;Perlモジュールが不足してCronジョブが失敗したときは以下のようなメールが届きます。ここでは &lt;strong&gt;Web::Scraper&lt;/strong&gt; というPerlモジュールが足りませんので、 &lt;strong&gt;[cPanel]-[Perlモジュール]&lt;/strong&gt; の画面から &lt;strong&gt;Web::Scraper&lt;/strong&gt; をインストールします。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;blog/2018/06/13/No-03.jpg&#34; &gt;&lt;img class=&#34;gallery-image&#34; data-flex-basis=&#34;712px&#34; data-flex-grow=&#34;297&#34; height=&#34;202&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://qwerty.work/post/2018/06/mixhost-mt-auto-rebuild-cron/images/No-03s.jpg&#34; width=&#34;600&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;パスの指定が間違っていて失敗した場合&#34;&gt;パスの指定が間違っていて失敗した場合&#xA;&lt;/h3&gt;&lt;p&gt;以下の場合、 &lt;strong&gt;Local.pm&lt;/strong&gt; というファイルの&lt;strong&gt;94行目&lt;/strong&gt;にあるパスが正しく &lt;strong&gt;/home/ze****ju/public_html/domain.name/mt-folder/tools/&lt;/strong&gt; になっていないというメールです。&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;blog/2018/06/13/No-04.jpg&#34; &gt;&lt;img class=&#34;gallery-image&#34; data-flex-basis=&#34;1170px&#34; data-flex-grow=&#34;487&#34; height=&#34;123&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://qwerty.work/post/2018/06/mixhost-mt-auto-rebuild-cron/images/No-04s.jpg&#34; width=&#34;600&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;mt-folder/lib/LWP/UserAgent/&lt;strong&gt;Local.pm&lt;/strong&gt; を開いてパスを toolsフォルダ までの &lt;strong&gt;/home/ze****ju/public_html/domain.name/mt-folder/&lt;/strong&gt; に変更します。以下は正しく変更したときのソースですが、&lt;strong&gt;88行目&lt;/strong&gt;にも同じようなソースがありますので、ここにあるパスも同じものに変更します。（※Local.pmはMTにはデフォルトで存在していないファイルです。ページの下の方に準備する方法を記載しています。）&lt;/p&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;blog/2018/06/13/No-06.jpg&#34; &gt;&lt;img class=&#34;gallery-image&#34; data-flex-basis=&#34;872px&#34; data-flex-grow=&#34;363&#34; height=&#34;165&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://qwerty.work/post/2018/06/mixhost-mt-auto-rebuild-cron/images/No-06s.jpg&#34; width=&#34;600&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h3 id=&#34;大前提としての基本準備&#34;&gt;大前提としての基本準備&#xA;&lt;/h3&gt;&lt;p&gt;最初に書くべき内容かもしれませんが、ここでは以前に他のレンタルサーバーでCronジョブによる再構築を行っていたものを &lt;a class=&#34;link&#34; href=&#34;https://px.a8.net/svt/ejp?a8mat=2ZF6W2&amp;#43;2DQFW2&amp;#43;3JTE&amp;#43;5YJRM&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Mixhost&lt;/a&gt; で行うとしたらどうやって設定すればいいかをメインにしていますので、後に書きました。Cornジョブを登録すれば簡単に自動で再構築ができるというもではありません。MTにいくつかの設定とPerlモジュールのインストールが必要です。&lt;/p&gt;&#xA;&lt;h4 id=&#34;webscraper-のインストール&#34;&gt;Web::Scraper のインストール&#xA;&lt;/h4&gt;&lt;p&gt;上にも書いていますが、Perlモジュールの &lt;strong&gt;Web::Scraper&lt;/strong&gt; が必要です。&lt;strong&gt;Web::Scraper&lt;/strong&gt; を &lt;strong&gt;[cPanel]-[Perlモジュール]&lt;/strong&gt; から検索して &lt;a class=&#34;link&#34; href=&#34;https://px.a8.net/svt/ejp?a8mat=2ZF6W2&amp;#43;2DQFW2&amp;#43;3JTE&amp;#43;5YJRM&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;Mixhost&lt;/a&gt; にインストールしてください。&lt;/p&gt;&#xA;&lt;h4 id=&#34;rebuild-pages-の基本設定&#34;&gt;rebuild-pages の基本設定&#xA;&lt;/h4&gt;&lt;p&gt;&lt;strong&gt;rebuild-pages&lt;/strong&gt; は再構築を行うためのスクリプトファイルです。ここに以下の初期設定が必要です。&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;  ファイルの場所&#xA;  /home/ze****ju/public_html/domain.name/mt-folder/tools/&#xA;&#xA;&#xA;  ファイル名&#xA;  rebuild-pages&#xA;&#xA;  （拡張子なしのファイル）&#xA;&#xA;&#xA;  2行目に追記&#xA;  use cPanelUserConfig;&#xA;&#xA;    （※レンタルサーバーがMixhostの場合に必要）&#xA;&#xA;&#xA;  $username&#xA;  MTの管理画面にログオンするときのユーザー名&#xA;&#xA;    （※コマンドに直接指定している場合は不要）&#xA;&#xA;&#xA;  $password&#xA;  MTの管理画面にログオンするときのパスワード&#xA;&#xA;  （※コマンドに直接指定している場合は不要）&#xA;&#xA;&#xA;  $script_path&#xA;  MTフォルダのパス&#xA;&#xA;  （例：/mt-folder/　※不要かも？）&#xA;&#xA;&#xA;  $hostname&#xA;  ドメイン名&#xA;&#xA;  （例：qwerty.work　※不要かも？）&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;blog/2018/06/13/No-07.jpg&#34; &gt;&lt;img class=&#34;gallery-image&#34; data-flex-basis=&#34;259px&#34; data-flex-grow=&#34;108&#34; height=&#34;555&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://qwerty.work/post/2018/06/mixhost-mt-auto-rebuild-cron/images/No-07s.jpg&#34; width=&#34;600&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;lwpuseragentlocalの設置&#34;&gt;LWP::UserAgent::Localの設置&#xA;&lt;/h4&gt;&lt;p&gt;&lt;strong&gt;ebuild-pages&lt;/strong&gt; が必要としている &lt;strong&gt;LWP::UserAgent::Local&lt;/strong&gt; がMTには標準ではないので、以下より &lt;strong&gt;Local.pm&lt;/strong&gt; のソースをダウンロード（ソースをコピー）します。&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/movabletype/movabletype/blob/master/t/lib/LWP/UserAgent/Local.pm&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;https://github.com/movabletype/movabletype/blob/master/t/lib/LWP/UserAgent/Local.pm&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;ソースをテキストエディタに貼り付け、Local.pmというファイル名で保存します。保存場所は以下のようになるよう、フォルダを作成して保存します。&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;/mt-folder/lib/LWP/UserAgent/Local.pm&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;localpmの基本設定&#34;&gt;Local.pmの基本設定&#xA;&lt;/h4&gt;&lt;p&gt;Local.pm はそのまま使うとエラーになるので、以下の追記が必要です。&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;use lib qw(../lib ../extlib);&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;blog/2018/06/13/No-10.jpg&#34; &gt;&lt;img class=&#34;gallery-image&#34; data-flex-basis=&#34;709px&#34; data-flex-grow=&#34;295&#34; height=&#34;203&#34; loading=&#34;lazy&#34; sizes=&#34;(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px&#34; src=&#34;https://qwerty.work/post/2018/06/mixhost-mt-auto-rebuild-cron/images/No-10s.jpg&#34; width=&#34;600&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;あとは上の方でも書きましたが、**  94行目 あたりに MTフォルダ までのパスを挿入することが必要**です。もっとスマートな書き方があると思うのですが、Perl はよくわからないのでいい書き方が見つかれば修正した方法を掲載したいと思います。&lt;/p&gt;&#xA;&lt;h3 id=&#34;以前書いた参考記事&#34;&gt;以前書いた参考記事&#xA;&lt;/h3&gt;&lt;p&gt;以前、他のサーバーでCronジョブによる再構築を行ったときに書いたページ。&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://qwerty.work/blog/2014/04/cron-rebuild-pages-movabletype.php&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;cronとrebuild-pagesを使って定期的にMovableTypeを自動で再構築する&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;その他参考ページ&#34;&gt;その他参考ページ&#xA;&lt;/h3&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;  &#xA;&#xA;&#xA;&lt;div class=&#34;link-card&#34;&gt;&#xA;  &lt;a href=&#34;https://www.h-fj.com/blog/archives/2014/05/27-102904.php&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &#xA;    &lt;div class=&#34;link-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://image.thum.io/get/width/300/crop/200/https://www.h-fj.com/blog/archives/2014/05/27-102904.php&#34; alt=&#34;https://www.h-fj.com/blog/archives/2014/05/27-102904.php&#34; loading=&#34;lazy&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &#xA;    &lt;div class=&#34;link-card-body&#34;&gt;&#xA;      &lt;span class=&#34;link-card-title&#34;&gt;https://www.h-fj.com/blog/archives/2014/05/27-102904.php&lt;/span&gt;&#xA;      &#xA;      &lt;span class=&#34;link-card-url&#34;&gt;https://www.h-fj.com/blog/archives/2014/05/27-102904.php&lt;/span&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;  &#xA;&#xA;&#xA;&lt;div class=&#34;link-card&#34;&gt;&#xA;  &lt;a href=&#34;https://redamoon.net/log/post/000029.html&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &#xA;    &lt;div class=&#34;link-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://image.thum.io/get/width/300/crop/200/https://redamoon.net/log/post/000029.html&#34; alt=&#34;https://redamoon.net/log/post/000029.html&#34; loading=&#34;lazy&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &#xA;    &lt;div class=&#34;link-card-body&#34;&gt;&#xA;      &lt;span class=&#34;link-card-title&#34;&gt;https://redamoon.net/log/post/000029.html&lt;/span&gt;&#xA;      &#xA;      &lt;span class=&#34;link-card-url&#34;&gt;https://redamoon.net/log/post/000029.html&lt;/span&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&#xA;</description>
        </item></channel>
</rss>
