してマザーボードか!?なんて、思わず最悪な状況を想像してしまった。Expressに装着していたグラフィックスボードの陰に隠れていたLEDを確認しようと、一旦取り外して電源を入れてみると、ピポッと音がなるやいなやCPUファンが回りだして、POSTまで動き出した。Expressコネクタに電源ケーブルを指していなければ電源は供給されないものと思っていたが、どうやら間違い。マザーボードからも電源は供給されているようだ(二枚差しだから)。以前はデスクトップとして使っていたPCを今はサーバとして使っている。2枚差しのグラフィックスパワーを使う機会は全く無い。GT710(5,510円/当時)。サーバならば、この程度で十分すぎるスペック。原則的にリモート操作で、どうせ起動時のログを確認する程度にしか使わないし。05:39:16だった。早朝のクロン・ルーチン中に落ちたっぽいがKernelログには異常は無いのでハードウェア故障だ。復旧までに24時間くらいかかってしまった。初動調査で電源が怪しいと見てしまったのが原因だけど、まさかグラフィックスボードが原因で起動しないなって。いうことで不要な電源が一つできてしまった。欲しい方がいれば譲ります。週末の土曜日で仏滅だった。暗い部屋では赤色と共に最も視認しやすく目につく色である。電源モジュールからカラカラ音が鳴り出したので、調べたらファンの羽が折れ曲がっていた。最初は叩いたら収まっていたが、段々と音も大きくなってきたので電源ユニット本体を取り替えたと云う次第。このサーバはWifiなどの自宅内ネットワークのGWでもある。LTSにアップグレードした。強敵はPHP5からPHP7.0にアップグレードされることなので、HTTP回り(Apache2.4/PHP/MySQL)の設定は丸々バックアップを取るも、MySQLのDBは特にバックアップせず。WordPressのDBは先のHTTPS化で既に作成済。do-release-upgrade途中、設定ファイルの適用可否を聞かれることがあったがアップグレード自体は20分位で終了した。Aborting(....)こちらはMySQL-5.7になってオプション名が変更になり、mysqld.cnfを修正する必要があったことが原因。アップグレード中の設定ファイル適用可否の質問には全て(N)で答えていたのが影響したようで、MySQLは下位バージョンとは互換性がないようだ(という情報をリリースノートに期待しているんだけど・・・)。いうことで、設定ファイルを修正したらあっさり起動した。LTSの環境になった。ここからが重要で、ウェブサービスを一つ一つ確認してくと、いろいろ問題がでてきたが代表的なものはこんな感じ。MWException城攻め訪問記でフォト集として使っていたO.r.i.g.i.n.a.l.が何も表示されなくなった正直、PHPなんて「守備範囲外」なのでよくわからない。そのため最初はPHP5.6にダウングレードしようかと思ったけど、結局はいつか解決しないといけないので今やることにした。1.の問題はデバッグログを出力するようにして実行時のバックトレースを見ると、どうやらキャッシュタイプが問題のようだった。PHP7.0になってphp-xcacheが提供されないことが原因。いうことで、ここはキャッシュを無効することで解決した。2.の問題は、error.logとPHP7.0への移植の際の注意点を見ながらDEPRECATEDなコードを一つ一つ修正した。古いコードということもあって、PHP5時代からいろいろNOTICES(Warnings)が出ていたのだけれど。いうこともあり、併せて他にも危なそうなコードを修正しておいた。HTTPS.コメントを残す昨今はなかなか便利なネットワーク環境になったもので、ついこの間までは有料であったSSL/TLS証明書によるサーバ認証が無料で実現できるようになった。自宅サーバ派としてはまったく嬉しい限りで、サーバをLTS版にアップグレードする前にこちらの認証局を利用してWebサービスをHTTPSに移行してみた。この認証局は今年の4月にはβ運用を経て正式運用が開始されており、さらにご親切に見事な翻訳でとても読みやすい日本語ポータルサイトを参考にすることで、導入にはほとんど苦労はなかった。WordPressとRewriteRuleを除いては。あとからWordPressをHTTPSに変更する場合、記事に含まれる内部URLを全てHTTPSに置き換える必要があり、とても面倒臭い。DBベースのBlogは皆そうなのだけれども。RewriteRulesは大の苦手で、なんとか強制的にHTTP→HTTPSしようとかなり苦心した。いえ念願のHTTPS化で少し安心。