当方、CentOS 6.8、apache 2.2.15、MySQL 5.1.73環境で、PHPのバージョンは5.3(だった)。これで特に問題なくやっていたのだが、とある事情から新たにプラグインを入れなければならなくなった時、それは突然起こった。
『このプラグインではPHP5.4以上が必要です』
ふーん。じゃあいっちょPHPのバージョンアップすっか。
この、軽い気持ちで始めたPHPのバージョンアップでものすごーくハマったのであった。
試行錯誤(読み飛ばし可)
>CentOS6/CentOS7にPHP5.6/PHP7をyumでインストール – Qiita
早速上記のサイトの通りにPHP7をインストールしようとしたらエラー。エラーメッセージがなんて書いてあったか、ちょっと忘れてしまったが。そしてここからが地獄への道のりなのだが、どこかのサイトに『PHP7が動くにはapacheのバージョンが2.4である必要がある』とかいう嘘が書いてあって、それを素直に信じた俺はなんとかapaccheのバージョンを上げた。ところがいざ動かそうとするとモジュールが読み込まれないたらなんたらのエラーメッセージがどっさり出て、素人の私はすっかり心が折れた。後で他のサイトを見たら、apache2.2から2.4への更新は結構骨が折れることらしく、hpppdの設定ファイルであるhttpd.confも2.2からの転用はまず出来ない。apacheの詳細まで勉強する気のない私は再びapacheをそっと2.2に戻した。
じゃあ、今度は取り敢えずPHP5.6にしようと思って色々インストールして、案の定動かなくてアンインストールしたりしてたら、PHPの関連ファイルとしてphpMyAdminも無くなったりして色々大変だった。
結局リポジトリが悪さをしていた。
>リポジトリとは 「レポジトリ」 (repository): – IT用語辞典バイナリ
リポジトリ、なんて言葉自体まず知らなかった訳だが、要するに色んなダウンロード先をまず登録して、インストールする場合は、あそこからダウンロードする、ここからはしない、と指定しながらやるんだね。知らねーわ、そんなこと。
で結局、PHP7は無事ダウンロード出来た訳だが、結局何がインストールを阻害していたか?というと、色々やってるうちに色んなリポジトリを登録しすぎたことが原因であった。必要なファイル類をインストールしようとすると、賢いんだか馬鹿なんだか、このリポジトリのファイルよりこっちのリポジトリのファイルが最新版だから、こっちをダウンロードしよう、とか勝手に気を利かせて、合わないバージョンのファイルをダウンロードしてしまい、結果、コンフリクトを起こしてインストール出来ません、となる。なので、整合性のあるファイル群をインストールしようと思ったら、リポジトリを絞ってダウンロードしなければならない。私の場合で言えば、散々色々やった挙句、一番最初のリンクあるインストール方法を少し変えただけであっさりPHP7がインストールされたし、WordPressも表示された。ちなみに、そのコードはこれ。
yum install --enablerepo=remi-php70 php php-devel php-mbstring php-pdo php-gd
インストール元を「remi-php70」の一箇所に絞っている。これで全て無事解決。
しかし・・・
サイトは表示されているが、コンテンツが全部無くなっている(-_-;)
合わないプラグインもある。
よくあるパターンではあるがトラブル解決後の次のトラブル。これは一旦全てのプラグインを外してみたらあっさり解決した。私の場合、改行をHTMLの改行コード「<BR>」に読み替えてくれるプラグインを入れていたのだが、これが対応して居なかったらしい。まあPHP5時代で開発が止まっているプラグインも多いだろうから、これはある程度は仕方がない。
結論。PHP7、めちゃ速い。
最初はプラグインの条件を満たすためだけに行ったPHPのアップデートだったが、実際PHP7に変えてみたら、表示が速いわー。私のところは一番安いプランのサーバーで、メモリが512MBしかないので、更に効果を感じる。(まあしかし、VPSの契約で512MBは人にはオススメしないわ、遅いもの) そんな訳で結果オーライ。でも大変だった。