PHP - PHP 8.2 → 8.4 - PHP アップグレード


クラウディア 


1. 概要
2. アンインストール
3. インストール
4. 設定

1. 概要

 「PHP 7.4」を「PHP 8.0」へ変更したときに倣って。  「PHP 8.2」をアンインストールしてから、「PHP 8.4」をインストールすることにします。

2. アンインストール

 「ports」で「make deinstall clean」すると依存するものが残って、明示的に削除するのに苦労します。  よって、「pkg」で「delete」していきます。  いきなり、「-y」オプションをつける手もありますが、依存するもので、削除されても支障ない、あるいは、後で明示的にインストールす必要があることを確認しつつ、削除していきます。

pkg delete php82
 とここで。

Updating database digests format: 100%
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 31 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
        php82: 8.2.29
        php82-bz2: 8.2.29
        php82-composer: 2.8.10
        php82-ctype: 8.2.29
        php82-curl: 8.2.29
        php82-dom: 8.2.29
        php82-extensions: 1.0
        php82-fileinfo: 8.2.29
        php82-filter: 8.2.29
        php82-gd: 8.2.29
        php82-gettext: 8.2.29
        php82-iconv: 8.2.29
        php82-intl: 8.2.29
        php82-mbstring: 8.2.29
        php82-mysqli: 8.2.29
        php82-opcache: 8.2.29
        php82-pdo: 8.2.29
        php82-pdo_sqlite: 8.2.29
        php82-pgsql: 8.2.29
        php82-phar: 8.2.29
        php82-posix: 8.2.29
        php82-session: 8.2.29
        php82-simplexml: 8.2.29
        php82-sqlite3: 8.2.29
        php82-tokenizer: 8.2.29
        php82-xml: 8.2.29
        php82-xmlreader: 8.2.29
        php82-xmlwriter: 8.2.29
        php82-zip: 8.2.29
        php82-zlib: 8.2.29
        smarty3-php82: 3.1.48

Number of packages to be removed: 31

The operation will free 45 MiB.

Proceed with deinstalling packages? [y/N]:
 と表示されます。  「PHP82」と「smarty」だけなので、安心して、y Enter。  後は。

pkg delete mod_php82
 これは、単独でしたので、いちいちはりつけませんが。  y で答えて削除します。

3. インストール

 下記のそれぞれに、「cd」して。

cd /usr/ports/lang/php84

cd /usr/ports/lang/php84-extensions

cd /usr/ports/www/mod_php84

cd /usr/ports/devel/php-composer

cd /usr/ports/www/smarty3
 いずれも。

make NO_DIALOG=yes

make install
 します。  「phpmailer」は、「laravel」の中のものを使っているから、大丈夫なのかな?

4. 設定


vi /usr/local/etc/php.ini
 下記の箇所を。  (行番号は、だいぶメンテナンスしているので、デフォルトとは、ずれていると思います)

include_path = ".:/usr/local/share/smarty3-php82:..."
 下記へ変更します。

include_path = ".:/usr/local/share/smarty3-php84:..."
 ここで。

service apache24 configtest
 問題がないことを確認して。

service apache24 restart
 「phpinfo」を確認して、「PHP 8.4」で動作していることが確認できました。

AbemaTV 無料体験