PHP バージョンを変更した後、Joomla CMS に「警告: session_start(): セッション データの読み取りに失敗しました: ユーザー (パス: /var/lib/php/sessions)」というメッセージが表示されます。

PHP バージョンを変更した後、Joomla CMS に「警告: session_start(): セッション データの読み取りに失敗しました: ユーザー (パス: /var/lib/php/sessions)」というメッセージが表示されます。

Ubuntu 16.04.6 LTS でこれを実行した後:

root@ubuntu:/home/dirk# sudo a2enmod php7.2
root@ubuntu:/home/dirk# systemctl restart apache2

Joomla 3.9.16 (最大エラー ログ付き) がブラウザーに表示される場合:

警告: session_start(): セッションデータの読み取りに失敗しました: ユーザー (パス: /var/lib/php/sessions) /var/www/so-geht-es/libraries/joomla/session/handler/native.php の 260 行目
エラー: アプリケーションの起動に失敗しました: セッションの起動に失敗しました

Joomla のバックエンド内でこのメッセージが表示されるため、PHP を変更するには:

エラー

お使いのサーバーで PHP 7.1.33-12+ubuntu16.04.1+deb.sury.org+1 が使用されていることが検出されました。このバージョンは廃止されており、開発者による公式のセキュリティ更新は受けられなくなりました。Joomla! プロジェクトでは、少なくとも 2020-11-30 まではセキュリティ更新が受けられる PHP 7.2 以降にサイトをアップグレードすることを推奨しています。ホストに依頼して、PHP 7.2 以降のバージョンをサイトのデフォルト バージョンにしてください。ホストがすでに PHP 7.2 に対応している場合は、サイトのルートおよび「管理者」ディレクトリで PHP 7.2 を有効にしてください。通常は、ホスティング コントロール パネルのツールを使用して自分でこれを行うことができますが、不明な場合はホストに問い合わせるのが最善です。"

しかし、PHP 7.2 では、上記のエラーが発生します。
この問題の原因を突き止めるにはどうすればよいでしょうか?

答え1

MySQLi 7.3をインストールしなかったため、追加でインストールする必要がありました。

sudo apt-get install php7.3-mysqli

現在のJoomlaではデータベース接続にMySQLiが必要です

答え2

7.2 から 7.4 にアップグレードするときにも同様の問題が発生しました。

どうやらこの問題はさまざまな理由で発生するようですが、私の場合は、コア 7.4 パッケージをインストールしたが、ボーナス パッケージの一部をインストールしなかったために発生していました。

そこで、 を実行してdpkg -l | grep -i php、表示されたすべてのパッケージの 7.4 バージョンをインストールしました。

どれが重要だったのかは分かりませんが、入力が終わる頃にはsudo apt-get install php7.4-zipウェブサイトが戻っていました。やったー!

関連情報