2019年1月28日

隠居のPC備忘録:ブログ記事を印刷する

ブログ記事をパソコンの画面だけではなく、ハードコピーにして残しておきたいという要求もある。私たちのテンプレート(スタイル)では、画面に表示されているそのまま印刷すると右サイドカラムやヘッダー・フッターが印刷されることになる。
 MT7にバージョンアップする前には、本文の記事と写真サムネイルだけをプリントあるいは PDF化しておくことができるようにカスタマイズしていたが、バージョンアップしてから、そのときのカスタマイズがなくなってしまっていた。どうしてやったのかと過去のブログの記録を探してみたが、見つからなかった。ちゃんと記録しておかなったようだ。
 それで、新たにググッてみると、以前に実施した思える方法が見つかった。Print 用の CSS を作成し、印刷するときには、その CSS を使用するように、HTML のコードに指示すればいいことがわった。
 これで、右サイドカラムやヘッダー・フッターが印刷されることはなくなったが、ただブラウザごとに異なる結果となる。特に、初めて print用カスタマイズを設置したときには存在していなかった Microsoft Edge での印刷が一番芳しくなく、Internet Explorer がもっとも良い結果であった。
 参照例:印刷時にのみ有効となるスタイルシートを設定する方法

 ただ、この方法で右サイドカラムやヘッダー・フッターが印刷されることはなくなったが、印刷時に、適切な位置でページ替えをする方法が見つからなかった。このような事案の解決は、Web ページの先進国である英語圏のページでヒットすることが多い。
 [CSS for print] というようなフレーズでググッてみると、以下のような英語のページがヒットした。
 How to Create Printer-friendly Pages with CSS
 このページに、求めていた記述があった。【Page Break】の部分である。  表を印刷するとき、表の途中で印刷が切れてしまわないようにするには、次のような CSS を記述すればよいことがわかった。実際に、print 用 CSS に記述してみると表の印刷前にページ替えが実行される。

table { 
page-break-inside: avoid;
break-inside: avoid;
}

私達のブログでは、表の中で、左に(あるいは右に)サムネイル写真、その隣に写真の説明文といった構成で一枚づつの写真を行替えしていることが多い。それで、上述の CSS を真似て、table 要素を table の子要素である tr にしてみるとテーブル内の行替えでページ印刷されるようになった。Page Break を十分に理解はできていないが、とりあえず満足している。
 今の所、Google chrome が一番期待に答えてくれている。
 現在、導入している CSS は以下のようなものである。
/* print.css */    
header, footer, aside, nav, form, iframe, .menu, .hero, .adslot {  
display: none;  
}   

tr {  
page-break-inside: avoid;  
break-inside: avoid;   
}  

2018年12月30日

隠居のブログ備忘録:Movable Type のロゴを表示する

9月に、ブログ Movable Type のバージョンアップをしてから、ロゴ(マーク)が表示されないままになっていた。ロゴが表示されなくても、ブログの機能には全く影響ないのであるが、せっかく最新のバージョンになっているので、表示しておきたいと思っていた。
先日、このロゴマークのサーバ上のありかが分かったので、少し編集して文字で表示していた場所に置いてみることにした。
 Movable Type のロゴマークは、/n-XXXXXXX.net/public_html/cgi/mtXX/mt-static/images/logo のフォルダーにある。デザインの異なる5つのロゴがあるが、自分のサイトに一番適していると思われるロゴを選択して、Phoroshop でいじってみた。リンクボタンらしくするために、ロゴの周りに境界線をつけるなど新しい学習もした。何か行き詰まると、私が持っている知識だけでは限界があることも多いが、助けてくれる記事があるのは助かる。

2018年12月15日

隠居のドライブ:初冬の滋賀北部(2)熊川宿

昼頃になって、観光客が増えてきたマキノピックランドで、りんごのジェラードを食してから熊川宿にカーナビをセットした。熊川宿は、鯖街道の福井(若狭)と滋賀(京都)の県境にある。重要伝統的建造物群保存地区に指定されている。福島県南会津にある大内宿に行ったことがある。そこと同じように、賑わっているかなと思ったが、平日で雨のせいもあるかもしれないが、ずいぶん寂れていた。
 昼食に入った蕎麦屋の主人の話では、住人がいない空き家も多くあり、住んでいてもほとんどは、老人だということだ。そういえば、あまり交通量のない宿の道は、介護のための車が目立った。

 蕎麦屋も家族営業と思われる店が2軒しかなかった。何か土産と思い、細々と営業している箸屋で普段使い用を3膳と孫用にセットを買い求めた。これは安かった。この鯖街道の終点は小浜は箸つくりで有名である。
 帰りは来た道を引返すつもりだったが、自宅に帰ると指示したカーナビは鯖街道を走れと指示してきた。湖西道路に比べれば、曲がりくねった道であるが、これも一興と雨の鯖街道をひた走った。途中峠と思しきところには鯖寿司を製造販売する茶店が多く幟を出していた。
 帰りの高速は渋滞もなく、4時には家に到着した。天候には恵まれなかったが、まあそこそこ充実した1日ではあった。

181206_012.jpg 2018/12/6 熊川宿(福井県若桜)
宿の通り
雨のせいもあるるのか誰も歩いていない。景観も何となく中途半端だ。

SONY α7Ⅱ+Sigma 18-300mm
28.0mm 1/60 f/4.0 ISO100 EV 0
181206_016.jpg 2018/12/6 熊川宿(福井県若桜)
柿の木
空き地には、柿の実が赤くなっていた。きっと渋柿だろう。

SONY α7Ⅱ+Sigma 18-300mm
30.0mm 1/90 f/4.5 ISO100 EV 0
181206_015.jpg 2018/12/6 熊川宿(福井県若桜)
熊川番所
宿の通りの入り口にある。番所には二人の役人が勤めており、通行人の取り調べのほかに、移出入荷物への課税を行い、藩の財政に大きく貢献してたという。二人の役人の人形が妙に生々しい。

SONY α7Ⅱ+Sigma 18-300mm
18.0mm 1/60 f/3.5 ISO640 EV 0
181206_018.jpg 2018/12/6 熊川宿(福井県若桜)
陣屋跡
宿の中ほどに、宿場町歴史広場として残っていた。通りには、疎水がかなりの量とスピードで流れていた。

SONY α7Ⅱ+Sigma 18-300mm
18.0mm 1/60 f/3.5 ISO200 EV 0
181206_020.jpg 2018/12/6 熊川宿(福井県若桜)
南天の実
庭先に南天の実が赤く熟していた。

SONY α7Ⅱ+Sigma 18-300mm
55.0mm 1/90 f/4.5 ISO320 EV 0
181206_019.jpg 2018/12/6 熊川宿(福井県若桜)
山茶花と水車
資料館の庭では、水車が回っていた。そばの山茶花がきれい。。

SONY α7Ⅱ+Sigma 18-300mm
55.0mm 1/90 f/4.5 ISO400 EV 0
181206_022.jpg 2018/12/6 熊川宿(福井県若桜)
白石神社
神社境内の紅葉はほぼ終わりのようだった。

SONY α7Ⅱ+Sigma 18-300mm
55.0mm 1/90 f/4.5 ISO400 EV 0
 

2018年12月10日

隠居のPC備忘録:Xserver - Movable Type 7 での指定時投稿の方法

Movable Type をバージョンアップする前(MT4.0) にはできていたのに、7 にアップしてから指定日時投稿ができなくなった。普段あまりそのようなことをすることはないのだが、年賀状の記事投稿を元旦の早朝に上げるような時に使っていた。今年は 9月に Movable Type をバージョンアップしているので、一度試しておこうとテストしてみた。が、うまくいかない。
 MT の記事編集画面で公開日時を指定し、サーバー上で同時に(私は、MovableType の運用は、レンタル・サーバーの Xserver を使っている。)cron 設定で日時を指定することまでは覚えていた。cron を使う方法は変わっていないと思うのだが、以前は見よう見まねで、どこからかひらってきたコマンドでうまくいっていたのだ。こうなると基本的な知識がないから、原因がさっぱり検討がつかない。
 このようなページで、cronとは何かの学習から始めなければならなかったが、なんとか自力で公開日時投稿ができるようになったので、備忘録として記録しておきたい。歳とともに、記憶力は極端に減衰してきている。

【MT の記事編集画面で公開日時を指定する】
 編集画面の右カラムで、【公開】の「ステータス」で 日時指定 を選択する。その下の「公開する」で日付ボックスをクリックするとカレンダーが表示されるので、記事をアップしたい日付を選ぶ。その下の時刻表示では、時間(24時間):分(2桁):秒(2桁)で設定する。
【保存】ボタンをクリックして保存する。MT の記事編集画面でする作業はこれだけである。

【Xserver での cron 設定】

  • Xserverのサーバーパネルにログインする。
  • 【アカウント】のグループにある「⇒Cron設定」を選択する。
  • 【Cron設定】画面で、「CRON一覧」タブの、「予約投稿テスト」の「変更」ボタンをクリックする。
    一般的な解説ページでは、「CRON追加」タブを選択し、新たに、日時指定と実行するコマンドを入力するように説明されているが、一回限りの日時指定投稿では、すでに作成しているコマンドを利用する方が楽ちんである。
  • 出てきた画面で、下の表のルールで日時指定をする。例えば、1月1日午前1時ちょうどならば、分:0 時間:1 日:1 月:1 曜日:* という風に設定する。* は何曜日でも適応される。 

    cron-04.JPG

  • コマンド欄には、次のように入力する。
    cd /home/ユーザ名/ドメイン/public_html/cgi/mt77; ./tools/run-periodic-tasks
    「変更」の場合には、コマンドはすでに表示されているから、編集する必要はない。実は、つまづいたのはこの部分である。指定日時投稿を実行する run-periodic-tasks というスクリプトは、MT アプリケーションファイルが収納されているフォルダー(私の場合:/public_html/cgi/mt77 )にある tools というフォルダーにある。このフォルダーへのパスである /home/ユーザ名/ドメイン/public_html/cgi/mt77 の後ろに /(trailing slash) をつけているとうまくいかない。それと、./tools/run-periodic-tasks へのつなぎ(;)もよく理解できていない。Linux script の書き方らしいが。マネするしかしかたない。

    cron-03.JPG


【FTPで、run-periodic-tasks のパーミッション設定】
FFFTPを使って、ファイル [run-periodic-tasks] のパーミッションを 755 に設定した。ネットサーチをしていると、そのような記述があったので、修正しておいた。

この記事も、実験的に、12月10日13時に、予約投稿にしてみた。

2018年10月22日

ご迷惑をおかけしました。

 9月のはじめに台風21号が関西地方を襲ったあたりから、13年間ほど続けてきた Movable Type でのブログが不調になった。文字化けしたり、PHPエラ-が起こって、新しくブログが投稿できない。乏しい知識でいろいろと調査してみたが、原因が分からない。
 レンタル・サーバー先である Xserver に質問を投げかけたが、少しはましになったが、解決しない。テンプレートを導入した【小粋空間】を運営している荒木勇次郎さんという方にも質問を投げかけたが、調査はしてくれているようだが返答はない。
 困り果てた。
 

 3人の老人が原稿を書いてきた、MovableTypeで続けてきたブログは、10年以上になったので、1500あまりの記事や多くの写真がが蓄積されている。この財産はあまりにも大きいので、MovableTypeを取り扱うプロ(大阪のトリックスター)に、お願いした。何回かのメールでのやり取りの結果、文字化け対策と文字化けの間接的要因になったMovable Type のバージョン(4.1)を最新(7.0)にしてもらう契約を、年金生活者でも払える程度の金額で引き受けてもらった。トラブルが起こってから、1か月もたった10月のはじめである。
 その後、技術担当者とメールでやり取りして、ようやく最近になって、元の形に回復してきた。さすがプロである。トラブル中に誤って消してしまったものや、カスタマイズしていたものは、再度学習をし直して、まだ、修復中であるが、あとは時間をかけるだけになった。老人ボケ対策にはいいかもしれない。

 

この間に折角訪問していただいた方には、もうしわけなかったが、過去の財産を生かしながら、新たに喜寿を越えた老人のブログを継続していくつもりである。

2017年1月 6日

隠居のブログ:XServerでMovable Typeの日時指定投稿を設定する方法(備忘録)

MT4 で投稿日時指定をするときに、いつも「どのようにするんだっけ」と手さぐりになるので、手順を備忘録として残しておきたい。
  1. レンタル・サーバー Xserver のCon設定画面を開ける。(Xserver へのログインは、サーバーパネルからである)
  2. MT自動投稿とコメントしているコマンドはそのままで、日時を変更する。
    投稿月日を例えば、1月1日1時5分と指定したい時は、以下のように行う。曜日は、月曜が1で土曜日が6だが、日曜日は、0か7である。しかし、*印を入力すれば、何曜日でもOKである。

    cron01.JPG

  3. コマンドについては、以下のようなページを参考にしたようであるが、変更は不要である。
    XServerでMovable Typeの日時指定投稿を設定する方法

2016年7月18日

隠居のパソコン備忘録:Windows10 を使う:新しいブラウザ Microsft Edge で Google IME ユーザ辞書を使う

6月になって、しばらく無視していた Windows10 へのアップグレードへの誘いで、無料アップグレードは7月一杯で打ち切ると言ってきた。パソコンのOSは、Windows にしているから、いずれアップグレードはしなければと思っていたので、暇を見てアップグレードを実行した。なにやかやと支障は出るだろうと覚悟はしていたが、今回はいつものアップグレード(例えば、XP から 7 に)に比べて、何事も無くすんなりと終わった。
 Windows10 には、Windows7 にはない(ちなみに私は、Windows8 は経験していない)機能が多くあるが、Windows7 でしていたことは、少々手順は異なるもののできるようだった。
 例えば、見失ったファイルの検索は、Win7 では、スタートメニューの下に表示される検索ボックスにファイル名(フォルダー名)の一部を入れて探していたが、Win10 では検索ボックスはパソコン画面下にツールバーに表示され、検索対象も Web も含まれる広範囲になっている。自分のPC内を検索するには、エクスプローラを開いて、目指す場所(例えば PC ドライブ ) を選択して、画面右上部に表示される検索枠にファイル名(フォルダー名)の一部を入力しすると検索を始めてくれる。実は、Win10にアップグレード時に見失ったフォルダーはこのようにして発見した。(実は、Win7 でも同様の方法で検索できることを今になって知ったのだが。)
詳細な方法については、「Windows 10で、フォルダー内のファイルを検索する方法について教えてください。」を参照。

 Win10 になって最も大きな変化は、インターネットのブラウザが、従来の Internet Explorer に変わる Microsoft Edge が出現したことである。もちろん、InternetExplorer(11) も動くのであるが、どうやら Microsoft は Edge に移行していこうとしているようだ。
  早速、Microsoft Edge でネットサーフィンを始めた。操作方法は、Google Chrome とほぼ同じである。新しいタグページを開くと、Chrome と同じように画面中央に検索ボックスが表示される。検索エンジンは、マイクロソフトのBingということである。(新しいタブページでの検索エンジンを Google に変更することを試みたが、現在のところ上手くいっていない。)
 ネットサーチするときには、この検索ボックスに検索ワードを入力して目標とするページを探すのであるが、 MS Edge では Google IME による日本語入力ができない。
 Movable Type でのブログ記事作成は、ブラウザ Chrome で行う。 Chrome の作成画面の方が、Internet Explorer より何かと便利がいいからだ。それに、メールは専ら Gmail をつかっている。その結果として、Google IME のユーザー辞書にかなりの単語登録がされている。例えば、"さんくす"と入力し変換すると"ありがとうございます。"と表示される。また、ブログ作成では、しばしば HTML コードを入力するが、あまり使わないコード、例えば、フォントを青色にするときに使うコード "<font color="#0000ff">" は、"あお"と入力して変換すれば出てくるようにしておけば、6桁の番号を覚えていなくてもいい。だが、Microsoft Edge ではこの辞書が使えない。
 Google IME には、MS IME のユーザ辞書をインポートする機能はあるのだが、その逆はない。それで、ネットで方法を探ってみると次の方法で、できることが分かったので備忘録として記録しておきたい。

Google IME ユーザ辞書をMS IME にインポートする方法

  1. Google日本語入力の辞書をエクスポートする
    • Google Chrome を開き、使用辞書をGoogle IME にすると下のように画面下段ツールバー右に、Google IME のアイコンと文字種(ここでは"あ")が表示される。

      IME-01.JPG

    • この文字種"あ"(小文字の場合は"A")を右クリックして出るセレクトボックスから「辞書ツール」を選択すると出る画面で、上の「管理」タブをクリックすると、下のような画面になる。

      IME-02.JPG

    • このセレクトボックスから、ユーザ辞書1を選んで「選択した辞書をエクスポート」をクリックすると名前をつけて保存することを要求してくるので、デスクトップにでも、"Google-IME" とでも名前をつけて保存する。

  2. 辞書の文字コードを変更する
        
    • Google-IMEの辞書コードは、UTF-8 なので、MS IME の辞書コードである ANSI に変換する必要がある。この変換方法は、このエントリーを書くにあたって参考にさせてもらったTanweb.net というサイトの「Google日本語入力の辞書をMicrosoft IMEへ引き継ぐ方法」では、辞書保存の画面下部には、文字コードを示すボックスがあるが、私の環境では表示されない。表示する何か方法があるのかもしれないが、見つけられなかった。
       それで、愛用しているテキストエディターの「秀丸」で、UTF-8 を Shift-JIS に変換した。Microsoft の ANSI というコードは、Shift-JIS をベースにMicrsoft 独自の加工をしている。
    • Shift-JIS に変換したファイルは、同じくデスクトップに保存する。

  3. Microsoft IME ユーザー辞書へインポートする
    • 今度は、MS Edge を開いて、日本語入力を Microsft IME にすると下のように画面下段ツールバー右に、Microsoft IME のアイコンと文字種(ここでは"あ")が表示される。

      IME-03.JPG

    • この文字種"あ"(小文字の場合は"A")を右クリックして出るセレクトボックスから「ユーザ辞書ツール」を選択すると出る画面で、上の「ツール」タブをクリックすると、下のような画面になる。

      IME-04.JPG

    • ここで、「テキストファイルからの登録」をクリックし、さきほどコード変換したテキストファイルを読み込むとユーザ辞書に Google IME の辞書が読み込まれている。


このように、Microsft IME と Google IME に同じユーザ辞書を登録しておけば、ブラウザが Google Chrome でも、Microsft Edge でも同じユーザ辞書を使うことができる。 ただし、MicrosoftEdge では、Google IME 日本語入力はできない。 

2016年7月15日

隠居のパソコン備忘録:全ブログ記事リストを表示する

私と同じサイトでブログ投稿を続けている YAMAKOさんから、今まで投稿したブログ記事のタイトル一覧 があれば便利ではないかとの提案があった。
 このようなときには、このサイトのブログを立ち上げるのに導入した MovableType を Version3 から Version4 にアップグレードした時に採用した「小粋空間」さんのテンプレート一式を老人のわずかばかりの知識を総動員して、エキスパートのコードをコピペするなどして対応してきた。
 今回も、いつもの様にネットで解決策を求めたが、うまくヒットしない。ようやく 「小粋空間」さんのサイトで、「ブログ記事に同一カテゴリーのブログ記事リストを表示(MT4版)」というページを探し当てた。ここに示されているコードをコピペしょうとしたが、どのテンプレートに挿入するかの記載はない。試行錯誤で、テンプレート・モジュールである「サイドバー」のここではないかと思われる個所に挿入すると、メインに表示している記事を分類したカテゴリーと同じカテゴリーを持つ記事タイトル一覧が、サイドバーに表示された。

 だが、どうもすっきりしない。いろいろなブログサイトを見ても、過去記事の一覧を簡単に見るページはたくさんある。
 いろいろと試行錯誤してみると、私のサイト環境で望む表示を実現できる方法が分かったので、老人の備忘録として記録しておきたい。

 方法は意外に簡単なことであった。私のサイトでも、最新の10投稿リストを表示するボタンがあった。(現在は、「過去記事タイトルリスト」に置き換えている) これを表示するコードは、次のようになっていた。


<!-- 最新の10投稿  -->
<div class="sidetitle2" id="entryname">
 最新の10投稿
</div>

<div class="side" id="entrylist">
<MTEntries lastn="10">

<MTDateHeader><ul><$MTEntryDate format="%y/%m/%d"$>
</MTDateHeader>
<li><a href="<$MTEntryPermalink$>" title="<$MTEntryTitle$>"><$MTEntryTitle$></a></li>
<MTDateFooter>
</ul>
</MTDateFooter>
</MTEntries>
</div>

<script type="text/javascript">
<!--
FoldNavigation('entry','off',false);
//-->
</script>
<script type=\"text/javascript">
<!--
generateNormalTree("entrylist");
//-->
</script>

 このコードの青字部分 lastn="10" は、参考書などによると出力する記事の件数を制限するモディファイア(HTML でいう属性)である。これが、表示する件数に関係していると思われたので、10 から 0 に変えてみると、見事に、この11年間に投稿した全記事のリストが表示された。
 (上のコードで使用されている JavaScript は、小粋空間さんが作成された「Movable Type サイドバー・メニューの折りたたみ」を応用したものである。)

 乏しい知識で、これを応用してサイドバーのテンプレートなどの表示部分をいじってみた。これによって、投稿全記事リストを表示することができるようになり、おまけに副産物があることが分かった。
 副産物は、理屈はよく分かっていないのだが、サイドバーの「Category」ボタンをクリックすると展開されるカテゴリーの一つ(サブカテゴリーを含めて)を選択すると、そのカテゴリーに該当する過去記事のすべてのタイトルリストが、「過去記事タイトルリスト」ボタンをクリックすることで表示されることであった。
今までは、左メイン枠に、該当する記事の最新の10記事(表示するブログ記事の数は、ブログ管理画面ー設定ーブログ記事設定ーブログ記事の表示数 で増減できる)全文が表示されるだけであったので、修正によってタイトルを見て古い過去の記事全文を表示できるようになったので大変便利となった。
 要するに、Movable Type 固有のファンクション・タグなどが十分に理解できていないことが、色々の対応を困難にしている原因であるが、もうこの歳になっての学習は困難となっている。痴呆予防には、助けになるかもしれないが。

2015年8月 8日

隠居のパソコン備忘録: 500 Internal Server Error の修復

ブログが突如開けなくなったと、当サイトの YAMAKO さんからメールが入った。あわてて自分のブログ(n-shuhei.net/atelier/)にアクセスすると、下のように同じ 500 error がでる。
 レンタル・サーバー先の Xserver のサポートの助けがあって、なんとか修復できたので、備忘録として記録しておきたい。

Error500-01.JPG

"Internal Server Error xserver" (xerver はサイトを置いているレンタル・サーバーである)で原因をネットで探ってみると、次のような回答があった。

Error500-02.JPG

新しいプラグインを設定するなど何も弄っていないので、原因は「CGIやPHPの同時接続数が多くなり、アカウント単位のリソース制限となっている」ぐらいしか考えられないが、急激にアクセスが増えたとは思われない。知識が少ない老人には解決できそうにない。思い余って、xserver のサポートに助けを求めた。

本件はお客様のサーバーアカウントにおきましてプログラム負荷が高まったため、一時的なリソース制限が行われその影響で500エラーが発生しているようです。

当サービスではPHPやCGIプログラムの実行、FTP接続、IMAP接続など全ての動作における合計に「同時稼動数」の上限を設けております。

「同時稼動数」が上限に達しますとPHPやCGIの実行で500エラーや503エラーが発生したり、IMAP接続に失敗するという状況が発生します。

そのような状況下で500エラーが発生している場合はサーバーパネル「ログファイル」にてエラーログを確認していただければリソース制限によるものかどうかをある程度確認することが可能です。

エラーログには以下のようなログが発生しますのでご参考にしていただければと存じます。
------------------------------------
Resource temporarily unavailable(PHP実行時)
suexec policy violation: see suexec log for more details(CGI実行時)
------------------------------------
Premature end of script headers
という旨のエラーメッセージが表示されている場合は、CGIの同時起動数が多くなり、 アカウント単位のリソース制限がかかっている可能性がございます。

(ご参考:突然、または断続的にCGIやPHPが500エラーで動作しない。)
http://www.xserver.ne.jp/faq_service_php.php#11

お客様の場合はCGIプログラムが、この「同時稼動数」を圧迫し、WEBサイト上のPHPなどの実行にも影響を及ぼしております。

大変お手数ですが、お客様が構築なされたプログラムについて構成の見直しを行っていただくことや、該当プログラムを一時削除いただく、またはパーミッション値を000等に変更し無効化することで症状が改善されるかなどお試しいただきましたら幸いです。

自分で分かる範囲で、指示された事項をいじってみたがうまくいかない。それで、"Xserver 500 error" で更にググってみると、次のようなページがヒットした。
http://net10man.com/archives/1836/
ここに書かれているPHP高速化設定(FastCGI化)を XserverPanel で実行してみると、ホームページへのアクセスは出来るようになった。が、MovableType の管理・編集画面でも同じような 500 Internal Server Error が出て、新たにブログを編集することができない。

再び、Xserver サポートに助けを求めた。次のような回答があり、今回の原因は悪質なクローラーが絨毯爆撃的に、robot でクロールしていたことが原因らしいと分かった。

サポートにて確認いたしましたところ、このたびのリソース制限の原因でございますが、お客様設置の【mt-search.cgi】というプログラムが多数稼動しサーバーアカウントにてご利用可能なリソースを大きく圧迫しておりました。

取り急ぎサポートにて該当プロセスを強制終了しましたので、再度状況をご確認くださいますようお願いいたします。

また、これまでと同様のホームページ運用を行っている場合、いずれ同様の500エラーが発生してしまいます。

・該当プログラムへのサーチエンジンロボット(クローラー)からの過剰なアクセスがある場合にはアクセスを拒否する
など、適切なご対応をいただきますようお願いいたします。

 ※mt-search.cgiはMovableTypeにて作成した記事の「全文検索」を行うためのプログラムかと存じます。こちらのプログラムへ集中アクセスが起きた場合、この度のようなリソース制限の原因となってしまいます。

悪質クローラーからのアクセスを拒否する方法について、xserver サポートに問い合わせて見ると、次のような回答があった。以下に記すように、ブログへのアクセス解析サービス Artisan lite を導入しているので、方法をよく考えて実施したいと思う。それにしても、たくさんのクローラー(検索エンジンBot)がネット上では動いているのだ。

検索エンジンBotのアクセス制限につきましては、サーバーパネル「アクセス拒否」設定等にて設定を行っていただければと存じます。
 ※アクセスログ等にて過剰なアクセスがないか等、ご確認ください。
なお、主要な検索エンジンのクローラーからのアクセスを拒否しても問題がないようでございましたら、[public_html]フォルダ直下の[.htaccess]に、下記の記述を追加していただくことで拒否が可能でございます。
########################################
Deny from env=blockbot

SetEnvIf User-Agent "Googlebot" blockbot
SetEnvIf User-Agent "Slurp" blockbot
SetEnvIf User-Agent "bingbot" blockbot
SetEnvIf User-Agent "Yeti" blockbot
SetEnvIf User-Agent "Baiduspider" blockbot
SetEnvIf User-Agent "DotBot" blockbot
SetEnvIf User-Agent "AhrefsBot" blockbot
SetEnvIf User-Agent "bingbot" blockbot
SetEnvIf User-Agent "TweetmemeBot" blockbot
SetEnvIf User-Agent "FlipboardProxy" blockbot
SetEnvIf User-Agent "QuerySeekerSpider" blockbot
SetEnvIf User-Agent "PaperLiBot" blockbot
SetEnvIf User-Agent "Google-HTTP-Java-Client" blockbot
SetEnvIf User-Agent "EveryoneSocialBot" blockbot
SetEnvIf User-Agent "LongURL API" blockbot
SetEnvIf User-Agent "LivelapBot" blockbot
SetEnvIf User-Agent "FlipboardProxy" blockbot
SetEnvIf User-Agent "Twitterbot" blockbot
SetEnvIf User-Agent "help@dataminr.com" blockbot
SetEnvIf User-Agent "MetaURI API/2.0 +metauri.com" blockbot
SetEnvIf User-Agent "Applebot" blockbot
SetEnvIf User-Agent "Jakarta Commons-HttpClient/3.0.1" blockbot
SetEnvIf User-Agent "ShortLinkTranslate" blockbot
SetEnvIf User-Agent "EveryoneSocialBot" blockbot
SetEnvIf User-Agent "OpenHoseBot" blockbot
SetEnvIf User-Agent "MetaURI" blockbot
SetEnvIf User-Agent "ceron.jp" blockbot
SetEnvIf User-Agent "FlipboardProxy" blockbot
SetEnvIf User-Agent "Go 1.1 package http" blockbot
SetEnvIf User-Agent "Applebot" blockbot
SetEnvIf User-Agent "Sogou web spider" blockbot
SetEnvIf User-Agent "YodaoBot" blockbot
SetEnvIf User-Agent "msnbot" blockbot
########################################

おかげで、MovableType のブログ編集画面も元に修復したが、設定している xserver の設定を見直すと、しばらくほってあったので、PHPやデータベース MYSQL のバージョンなどが低くなっている。これらのバージョンをUPすると、今度は ブログへのアクセス内容を解析するサービス Artisan lite が稼働しなくなった。
 5年前にArtisan lite を設定してから、これも見なおしていなかったので、バージョンが上がるなど問題が発生している。色々と修復を試みたが、うまくいかず、仕方なく新たにインストールしなおしたら、ようやく動くようになった。Artisan Lite のインストールについては、別のエントリーで記録しておきたいと思う。

2013年12月19日

隠居のパソコン備忘録: IE10 でページが最新に更新されないとき


 私は、ブラウザは Internet Explorer 10(IE10) と Google Chrome とを使っている。同じように動くのであるが、いろいろなことで反応がことなる。

 ブラウザを使って何か作業をするときには、主に Google Chrome にしている。何かと便利だからだ。特に、Movable Type 4 でブログの記事を作成するときには、Google Chrome の方が反応がいい。
 例えば、文中に写真を挿入する場合、Google Chrome では、カーソルがあるところに、挿入する画像を表現するHTMLコードを置いてくれる。IE10 にかぎらずIE では、本文作成の上部に表示される。いちいちコードを切り取って 挿入する場所に、cut&paste しなければならない。その他、細かい部分で、 Chrome と IE では表示が異なる。HTML のコード解釈が異なるのだ。
 ところが、ブログを見にきてくれる方は、大部分(約50%)は IE であるから、公開前に IE での確認が必要である。

 ブログの新しい記事を作成・公開するときには、上に書いたように Chrome で MT の記事作成画面を開いて、記事を書きながらときどき保存し確認ボタンで、仕上がりを確認する。この場合、仕上がりは Chrome での表示モードでの確認となる。私のブログでは、最近訪問してくれる人の20%ほどは、 Chrome であるが、50%近くは、相変わらず IE であるから IE での確認も欠かせない。
 IEでの確認は、 Chrome で作成した記事を公開してから、開いてあるIE でページの更新ボタンrenovation-01.JPGをクリックすると更新表示されるはずである。 が、変化がない。Chrome ではブログを修正し保存した時には、最新に更新されるのに、IE ではされない。それで、ググって見ると、解決方法が紹介されていた。方法は、以下のとおりである。

「ツール」⇒「インターネットオプション」⇒「設定」をクリック
renovation-02.JPG


「Webサイトを表示するたびに確認する」を選択 初期設定は、「自動的に確認する」になっている
renovation-03.JPG


 ということは、ほとんどの方がIEでご覧になっているから、ページを修正してもタイムラグが生じると心しておかねばならないということのようだ。