X

CPI(KDDIウェブコミュニケーションズ)でWordPress用にphpのバージョンをあげたらハマったこと

CPI(KDDI ウェブコミュニケーションズ)ロゴ

WordPressの管理画面でPHPのバージョンが古いため注意を促されていました。
今回CloudflareでSSL化したのですが、 WordPress の Cloudflare プラグインがphp7.0には対応していないようなので、バージョンをあげることにしました。

もともとこの WordPress はサーバー管理画面のインストーラーからインストールしたものですが、インストール時にphpのバージョンは勝手に決められ 、php7.0.32のiniファイルが設置されます。

特に php.ini の内容も触っていなかったので、サーバーの管理画面からPHP7.4.22のphp.iniを複写してサーバーにアップロードしました。

そのあと.htaccessファイルの記述を

AddHandler x-httpd-php74 .php

に書き換えてアップロードしたところ、「データベース接続確立エラー」・・・

一体何がと色々調べてみたものの中々原因がわかりませんでした。
mysqlのバージョンを変えた訳でもないし、接続するデータベースも同じ、 WordPress のファイルも一切触らずなので、最終的にやはり php.ini ファイルが怪しいとは思ったのですが「 WordPress 」「 データベース接続確立エラー 」で検索すると色々出てくるのでかえって遠回りしてしまいました。

最終的にphpinfo()で設定内容を確認していて発見したのが「mysqli.default_port」の設定でした。

なんとサーバーの管理画面においてあるベースの php.ini はポート3306なのに、 WordPress を管理画面のインストーラーを使ってインストールすると、自動で設置される php.ini の 「mysqli.default_port」 は3307で設定されていました。。。

これを変更したところ、無事データベースに接続できてサイトが閲覧できました。
意図があってポートを変更しているのかもしれませんが、迷惑な話でした。

はにゃ: