できない。なぜだ。
ということで調べてみましたので、その結果をご報告します。
WordPress 4.3.1–jaにアップデートしようとすると以下のメッセージが表示されてアップデートできません。
----------------------------------------------
http://downloads.wordpress.org/release/ja/wordpress-4.3.1.zip から更新をダウンロードしています…
ダウンロードに失敗しました。: error:0D0890A1:asn1 encoding routines:ASN1_verify:unknown message digest algorithm
インストール失敗
----------------------------------------------
別のWordPress環境で更新をしたところ、何のエラーもなく正常に終了しました。この差はなんだろう?と思いいくつか調べてみた結果…
ここで結論を言いますと、PHPのバージョンが古いせいだ、という結論に達しました。
「php -v」の実行結果で表記されたバージョンは5.2.XX。
⇒うーん理由があって仕方がないとしても、古い。
一方成功したサーバではphp -vの実行結果は「PHP 5.4.45」です。
downloads.wordpress.orgへの接続がPHP 5.2.XXでは接続が確立しない、ということのようです。
古い方はOSがRHEL(の旧バージョン)でして、もはやバージョンの更新がかなり保守的になります。RHELの独自対策に頼り切る方針で稼働しているんですよね。なのでPHP5.2が(セキュリティアップデートはRHEL独自提供で)未だ稼働している状況です。で新しい方のOSはDebianのStableバージョンを使っているので(Debianの保守性を考えても)それなりのバージョンなのです。
ここでご報告がもう一点あります。
手順を期待されている方すいません。結局エラー解消手順は実施していませんので、この記事にPHPのバージョンアップ方法やPHPバージョンアップしたから結局エラー解消という流れは一切出てきません。
その理由、というのが、
このWordPress、
現在使われていません…。
ホントに?いやホントでした。
使われていないWordPressを、大した手間ではないとはいえど、私は今まで、えっちらおっちら更新してきたというわけですか…。
さて、サーバ導入からはや3年程度経過していますが、使われていないWordPressで継続のターニングポイントがきました。
やるべきことは、
# mv %DocumentRoot%/wp %DocumentRoot%/wp_e4vBf2oHEAkEvC
これでよし、と。
ランダム文字列でリネームしてやりましたよ!
使われていないから止めてやりましたとも!
ひとまず、アクセスを不可能にしてしまって、PHPのバージョンアップについてまずは移行先バージョンの検討とバージョンアップのための調査が必要なのですが、他が問題なく動作しているこの状況で、使われていないWordPressのためだけにPHPのバージョン入替…は、やはり優先度を低くせざるを得ません。
本来は、
PHPのバージョンアップで最低でも5.4以上にし、WordPressアップデートが可能にする
という処理をやるべきですよね。ただ、誰も使っていないWordPressにそれだけの労力を掛ける意義が見出せない、という困った状況です。
更にはこの対象サーバ自体、年内(2015年内)でリプレイス計画が予定に組み込まれており、ここで無理をしてPHPのバージョンアップをして使っていないWordPressをバージョンアップすることの意義はますます見いだせない、という”さらに困った(むしろうれしいか?)状況”です。
このような経緯から今回はペンディングすることになりました。
最終的にPHPのバージョンアップからWordPressのアップデートまでが成功した記事になる予定だったのですが、、、期待して読んだ方、すいません。
結局メリットが薄くて「やらない」という決断になってしまいました。
脆弱性の問題事態は最低限回避できている(という説明を受けた)ので「やらない」という決断も時には重要です。(脆弱性が残ったままになるのであれば、やるべきですけどね。)
こういうこともあるよね。