自宅のWebサーバーのOSを入れ替えました。本当ははてなハイクが終了して、それ関連のサービスを片付けられるようになったら着手しようと思っていたのですが、その前に始めたいモノができて、Apache2.4系を要求されてしまったので、エイヤでやりました。もしなんか動いてなさそうなのがあったらこそっと教えてください。
CentOS6でサーバー構築したのは、今調べたら6年半前のようでした。その前はCentOS5だったと思うのですが、このときはPHPのバージョン変更による影響が大きくなかったのでそれほど大変ではなかったような気がします。
今回はバージョンがガラッとかわったので作業もまあまああり多く、やや大変でした。というか、気力がないとなかなか手を付けられぬといった感じ。
- OS: CentOS 6 → UbuntuServer 18.04
- カーネル: 2.6.32-754.10.1.el6.x86_64 → 4.15.0-45-generic
- Apache2: 2.2.15 → 2.4.29
- PHP: 5.3.3 → 7.2.15
- MySQL: 5.1.73 → 5.7.25
- Pukiwiki: 1.4.6 or 1.4.7 → Pukiwiki 1.5.2
PHP 5.3→7.2が一番やばく、いろんな関数が削除済みになってしまったので、移行作業中にスクリプト改修もやるみたいな感じになりました。mysql→mysqli関数に変更するあたりが地味に多かったです。あぶない。
Pukiwikiはサーバー内で4つくらい動いていて、ほとんど静的コンテンツ化して良いレベルではあったのですが、先日リリースされたばかりのPukiwki 1.5.2にアップデートして、新環境でも動作できる状態にしました。EUC版、UTF-8版と分かれていたり、古いのは1.4.6でパッチ当てに難儀したり、いくつかカスタムスキンとかPermalinkの魔改造を捨てたりしています。無改造で運用しているぶんには苦労しないでしょうけど、ちょっとでも手が入ってると大変かなあという印象です。スキンも現代に合わせてだいぶ手が入ったようですが、ある程度合わせてあとは旧来のままにしてごまかしています。古いのはまじでHTML化考えないと。
ついでにコンテンツのゴミ整理も進めて、存在を忘れていたようなものは移行せずに捨てて、使用していなかったmarokun.netのWordPressはやめて旧デザインのHTMLに戻しつつHTMLを再整備しました。次はドメイン単位の整理もしたいところ。少し数を減らしたいなと。
ハイクの終了と同時に片付けられるコンテンツも移行してありますが、DBも絡むHaiku2Twitは旧サーバーで動かしたまま、リバースプロキシで対応しています。
Let's Encrypt周りはそのまま持ってきたものの、Apache2の設定をcertbotがいじってくれたものから結構変えてしまったので、次のrenew作業がすでに憂鬱です。うまく発行できれば良いんですけど、certbotなかなかすんなりと動いてくれないからなあ。ふぇぇ。
今回のOS入れ替えで、自宅からCentOSが多分消滅しました(まだ動いてるけど)。今度からはUbuntuのメジャーバージョンアップを回していく感じになりそうです。14.04がいたらガッと上げてみるかしら。