7を組み合わせた環境に切り替えました。構築自体はそれほど難しくなく、DBの中身を移動させるところで少々ハマったのでメモを残しておきます。7個人無償ライセンス。5.28PHPは7.2.11phpmyadminは4.8.3ImageMagickはImageMagick-6.9.10-14-Q16-x64-dllという組み合わせ。ImageMagickだけは古いのを選んだ。各パッケージはCドライブなりに解凍してPATHを通すか、インストーラーに従って標準のディレクトリにインストールするだけ。移行する手順としては、とりあえず新規にMT7をインストールする。PHPとphpMyAdminをインストールして使えるようにする。phpMyAdminで旧サーバーのDBをエクスポートする。エクスポートしたファイルをエディターで開いて、今後https化するために、httpのURLで書かれているものを相対パスに直す。書き換えたエクスポートデータを新サーバーにインポートする。写真のようなスタティックなアセットをコピーする。DBをアップグレードして、権限などの問題がなければ全リビルドして終了。ようなものをイメージして作業にとりかかった。PerlのCPANでインストールできたから問題なし。https://www.imagemagick.org/script/download.phpでDLL版をダウンロードして、インストール時にライブラリとヘッダーをインストールするようにオプションを変更。Clientで以下のコマンドを実行。Image::MagickStrawberryPerlのDBD::MySQLは以下の手順。最後にエラーが出たけど無視。qPHPのCGIの設定は、WS2016のIISではハンドラマッピングのモジュールマップの追加で行う必要がある。続いて、phpMyAdminでインポートする際、エクスポートしたファイルは大概2MB以上あると思うので、インポート時にサイズが原因でエラーにならないように設定を変更する。phpをインストールしたディレクトリにあるphp.iniをテキストエディタで開いて、以下の3つの行を書き換える。エクスポート前にMTのツールでログを全部削除しておけば、エクスポートされたファイルのサイズはかなり抑えられるし、基本的に不要なので、mt_logはエクスポートしないというのも手。384Mまた、既定の設定でIISをインストールすると、セキュリティ機能でアップロードできるファイルサイズがチェックされるようになるので、phpmyadminのアプリケーションのみ、インポート可能なサイズの上限を引き上げておく。Siteという名前にして、その下にphpmyadminというアプリケーションを作っている場合。自分のサイトとアプリケーションの名前に置き換えて実行。以下の例では100MB近くまでアップロードできるようにしているが、アップロードし終わったら上限を下げたほうがセキュア。-requestLimits.maxAllowedContentLength:100000000あとはphpMyAdminでMTのDBを選択して、編集後のファイルをインポートするだけ。自分の環境では50MBくらいのファイルをインポートすることになった(文字コードがUTF8だからファイルサイズが純粋に大きい)。インポートが成功したら、ひとまずDBをアップグレードするだけの状態になったはず。(以前、アクセスカウンターのプラグインを入れていて、テーブルに既定では存在しないカラムが追加されていたことが理由でインポート時にエラーになっていた。カラムを追加すれば済むけど、そもそも、DBを作成してからmt.cgiを実行しないでphpMyAdminでインポートすれば、エクスポートしたテーブルの情報で新しくテーブルから作成されるはずなので、それならエラーは発生しないはず)mt.cgiを実行すると、mt_configに書かれているバージョン番号がMT7よりも古ければDBをアップグレードする処理が走って、MT7で追加されたり変更された内容がDBに反映される。ブログ全体を再構築して(まる1時間かかった)、投稿などの機能が問題なく動くことを確認する。ここで引っかかったのが、投稿時にトラックバックのエラーが出る事象。新規インストールでまっさらな状態では発生しなかったので、アップグレードすると起きるものらしいけど、おそらくすべての人で起きるわけではないだろうから、過去に使っていたプラグインの影響があるかも。対処方法は、MT7をインストールしているディレクトリのpluginsディレクトリ配下にTrackbackBugsWorkaroundSampleというディレクトリを作成し、https://gist.github.com/miniuchi/6926418b5a9649eea0daff9424017a00にある中身をコピーして、config.yamlとして保存すると解消する。(プラグインとしてこの名前のプラグインが有効になっていることをあらかじめ確認)あと、自分がハマったのはエディターのTinyMCEが表示されなかったこと。エディターに関係ありそうなプラグインを片っ端から無効化してエディターは表示されるようになったけど、画像をアップロードする際に自動的に名前を付けてくれる機能などがなくなっていたので、これはImageUploadUtilityというプラグインをインストールして対処した。TinyMCEが公開されているので、それを利用するのも手だろうけど、作者の方が書かれているように、標準エディターを使わないというのはMT7のコンセプトとはちょっと違うのかもね。結局のところ、アップグレードしてしまうと、過去に使っていたスタイルをそのまま引き継いでしまうので、MT6だろうと7だろうと見た目が同じ。一度どこかで見た目を全リセットしたいところだ。帰省このブログを購読Homeこのブログはクリエイティブ・コモンズでライセンスされています。