001って書いてるけどたぶん続かない...続いたら困る。
(SIRはSecurit Incident Report)
なんて前回のSIRで書いてたのに2回目。しかも反陽子爆弾級のやらかし。
メモ(Twitterモーメント)
https://twitter.com/i/events/1506974750937325568
要約
- MT脆弱性突かれてハックされた
- バージョンアップ放置してた(最初の修正版6.8.3から5ヶ月、完全修正版6.8.5から3ヶ月)
- 思ってたより影響大かもしれない
文鳥可愛い。まどマギ好き。SEやってます。
001って書いてるけどたぶん続かない...続いたら困る。
(SIRはSecurit Incident Report)
なんて前回のSIRで書いてたのに2回目。しかも反陽子爆弾級のやらかし。
メモ(Twitterモーメント)
https://twitter.com/i/events/1506974750937325568
要約
当ブログのブログエンジン?をMovable Type 6.2→6.3にバージョンアップしました。
PHP 7 と MySQL 5.7 に対応した最新版 Movable Type 6.3 の提供を開始 | Movable Type ニュース
...閲覧する側にはほとんど変化ないはずだけど。
唯一関係するのは、MT6.2でいつのまにかこっそり追加されてた画像の品質変換を無効にするフラグが追加されたこと。
もちろん即無効に。せっかくローカルで画質調整してるのに、勝手に変換しないでほしい。
以降、メモなので蛇足。
このブログのナビゲーション(ページ移動)を少し調整。
脚注を記述できる MovableType プラグイン:Footnote - Open MagicVox.net
私は結構脚注(※1)を使うんだけど、今まではずっと手動で記事末尾や段落の下に書き入れてた。
でも、それだと後で注釈が増えたときに番号を付け直さないと行けなかったり、本文と脚注が同じような見た目で分かりづらかったりして、いろいろと面倒。
そこで、いいプラグインがないか探してみたところ、上記の「Footnote」を発見。
早速これを導入してテンプレートを書き換え。
あとは、Movable Typeの編集画面でHTML編集モードに切り替え(※2)、<footnote>(~)<footnote>で囲めばOK。
今朝は3時まで起きちゃったから、今夜こそ早く寝よう...と思ってたけど、どうしても弄りたくなってつい。
今日やったことは
これでほぼ機能としてはさくらのブログで有効にしてた分は使える状態になってるはず。
設定をいろいろ弄ってて、「あれ?これどこで変更するの?」となることはよくあるんだけど、何処を探しても、Googleで検索しても、一向に見つからない設定があったので、無理矢理MySQLでupdate文を発行して変更。
その1.MTAuthorBasename
「投稿者のベースネーム」という意味だけど、ユーザー情報の編集画面には「ユーザー名」と「表示名」しかない。
ユーザー名はログインID、表示名はブログ記事などに表示される投稿者名だけど、ベースネームはそのどちらとも違う。
これは、アップロードフォルダの選択肢の1つである「(ブログルート)/ベースネーム」で使われているのを確認(他で使ってるところは不明)
解決策:mt_authorテーブルのauthor_basenameを直接書き換え。パス名などに使われるので日本語は使わないほうが良いと思う。
その2.トラックバックのグローバル許可
トラックバックを許可しようと思って「設定」→「投稿」と進んでも、トラックバックのところに「ブログまたはシステム全体の設定でトラックバックが無効なためこのオプションは無視されます。」という警告が出ていて、無視してONにしても有効にならない。
システム全体の設定に無効化のスイッチはあるけど、もちろんそれはOFFになってる。
解決策:mt_blogのblog_allow_pingsを1にする。
ちなみにblog_allow_pings_defaultが設定画面にある「トラックバックを許可」の反映。
また、システム全体の無効化スイッチはmt_configにあるAllowPingsだと思う(未検証)。
懸念だったデザイン・レイアウトもほぼ固まってきたし、旧ブログ(約定期blog GS)からの記事インポートも完了。
デザインは結局RainierをベースにレスポンシブWebについて調べて弄りまくってたら原型がなくなってきたので、もうほぼ完全にオリジナルテーマ。
この記事を投稿する時点ではまだRainier由来の部分が残ってるけど、完全に移行するときには撤去する予定。
そもそも、現状でもすでにRainierのテーマCSSを使わずテンプレート内で合成して単一のstyle.cssを生成するようにしてるし、テンプレートもdiv#wrapperとか追加して記事幅可変に対応させたし、ナビゲーションメニューはモバイルでもドロップダウンにしないようにしたし、StyleCatcherも使えないようにしたので、中途半端に残ってても意味がないどころか害悪になるかもしれない。
もちろん、Rainierも十分いいテーマだと思うし、少ない労力で見栄えの良いサイトを作ったり、同じ基礎デザインを元にパッチ方式でテーマを作ったりする分にはいいんだけど、細かいところまで詰めようとするとやっぱり不十分。
もっとも、そこまでやりこむならそもそもMovable TypeじゃなくてRails+自作CMSとかすればいいんだけど、現MCRNのあるさくらレンタルサーバ(スタンダード)ではPassenger等が使えないから無理。その辺はCVMUプロジェクト(VPS借りて先進技術で固めたWebサイトを作る)がうまくいったらまた考えようと思ってる。
Movable Typeに移行&リニューアル予定のこのブログ。
移行計画はなかなか進んでないけど、それを良いことに新バージョンが出たのでさっそく適用。
今回はマイナーバージョンアップなので上書きでもよかったけど、念のためフルバージョンアップの手順で実行。
ついでにメモも作成。毎回公式手順探して確認するの面倒だし。
まあ、7.0とかになったらまた確認し直さないと行けないけど。
1.新しいMTのアーカイブ(zip)を取得
2.回答してtarに詰め直す
3.scpでアップロード
4.旧MTの実行ディレクトリをコピー
5.旧アーカイブ・スタティックのコピー
6.MT内から「ツール→バックアップ」
7.MySqlのバックアップ
mysqldump -u ユーザ名 -h ホスト名 -p db名 > バックアップファイル
8.3.でコピーした新MTを解凍
9.パーミッション修正
cd 新MTディレクトリ
find . -type f -print | xargs chmod 644
find . -type f -print | grep "\.cgi" | xargs chmod 755
find . -type f -print | grep "\.php" | xargs chmod 755
find . -type d -print | xargs chmod 755
※grepのバージョンはgrep (GNU grep) 2.5.1-FreeBSDだった。
10.旧MTをmvで別名にリネーム&新MTを旧MTにリネーム
mv mt/ mt60/
mv MT-6.2/ mt/
11.設定ファイルコピー
cp mt60/mt-config.cgi mt/
12.プラグインコピー
非対応・サポート終了などに注意。
※Loupeは使ってないし同梱されなくなったので移さなかった。
cp -a mt60/plugins/PostTweet/ mt/plugins/PostTweet/
13.サポートコピー
cp -a mt60/mt-static/support/ mt/mt-static/support/
14.テーマ
themes/以下に、追加したものがあれば。
今回は追加がなかったのでスキップ。
15.htaccess等
.htaccess、.htpasswdを使っていればそれもコピー
16.リビルドして確認
17.旧MTディレクトリをtarに詰めて退避&削除
(移行関連の記事を約定期blog GSカテゴリに書くのも変なので、今回からカテゴリを変更。)
移行先のブログのほうに、Twitter Cardの設定。
テンプレートモジュール化して、MTIfArchiveTypeとか使って個別記事ページだけSummary with Large Imageになるようにしてみた。
ついでに記事への画像添付もテスト。
さくらのブログほど分かりやすい画面じゃないし、EXIF消去とかないけど、その辺は後々弄っていけば良いかな。
位置情報にさえ気をつければ、別にEXIFあったってかまわないからね(スマホ画面を一眼レフって騙ったり、iPhone 6sで撮影~とか書いてて思いっきりAndroid端末なんてこともしないし)。
約定期blog GS(さくらのブログ)を新blog(Movable Type 6)に移行するの、10月ぐらいを目処に考えてたけど、年内ぐらいでもいいかも。
デザイン、エディタ、画像の扱い、記事ID…とにかく、完全移行しようと思うといろいろ細かい問題があって、その辺をどうするかがなかなか決まらない。
そもそも、移行しないといけない決定的な理由はなくて、なんとなくhttpsなメインサイト(https://mcrn.jp/)に統合したいなー、という程度なので。
まあ、また気が変わって「すぐ移行する!」ってなるかもしれないけど。
リニューアル中なので、さくらのブログにあってMT標準にない機能をいろいろと追加中。
Twitterへの更新通知もその1つ。
PostTweetというプラグイン(エムロジック放課後プロジェクト: PostTweet アーカイブ)を試してみた。
さくらのブログだと、更新テンプレートが
『記事名』ブログ名|URL(非短縮)
になってるので、その通りにしたかったんだけど、何故か上手くいかない。末尾が切れてしまう。
いろいろ試していて原因が判明。なんと、このプラグインが勝手に140文字で切ってしまってた。
今日は、Movable TypeにGoogle Analyticsを設定して、テンプレートにトラッキングコードを仕込んだ。
クライアントIDとクライアントシークレットの設定、検索してもなんか画面が違うしややこしい。
しかも、「あなたのGoogleアカウントに有効なAnalyticsが紐付けされてないよ!」みたいなエラーが出たので、間違ってるのかと思ったら反映まで時間差があっただけだった。なにそれ。
メモ:現時点のMT6だと、OAuth Clientとして登録して、Webアプリとして認証する(サービスアカウントではない)。
「Google Analyticsのプロファイルを選択する」ボタンで、TwitterやFacebookで見慣れた「認証画面」が立ち上がるので、手動で認証する。
いろいろほったらかしすぎてたせいで、スマホ対応も全然できてなかった…。
とりあえず、方針としてはMovable Type 6を使えるだけ使ってやっていくつもり。
うまくいけば、さくらのブログから記事を引き上げて、フルHTTPSでブログも展開したいかな。
あと、この約定期blog GSも、当初の設立理念?とかけ離れてきたし、新たに名前を変えて再開予定。
今度は「約定期~」シリーズじゃないのにするつもり。
今日は時間がないから、とりあえずトップページ少し弄って終了。