yum list installed | grep php > php74-list.txt cat php74-list.txt php-cli.x86_64 7.4.11-1.amzn2 @amzn2extra-php7.4 php-common.x86_64 7.4.11-1.amzn2 @amzn2extra-php7.4 php-devel.x86_64 7.4.11-1.amzn2 @amzn2extra-php7.4 php-fpm.x86_64 7.4.11-1.amzn2 @amzn2extra-php7.4 php-gd.x86_64 7.4.11-1.amzn2 @amzn2extra-php7.4 php-intl.x86_64 7.4.11-1.amzn2 @amzn2extra-php7.4 php-json.x86_64 7.4.11-1.amzn2 @amzn2extra-php7.4 php-mbstring.x86_64 7.4.11-1.amzn2 @amzn2extra-php7.4 php-mysqlnd.x86_64 7.4.11-1.amzn2 @amzn2extra-php7.4 php-opcache.x86_64 7.4.11-1.amzn2 @amzn2extra-php7.4 php-pdo.x86_64 7.4.11-1.amzn2 @amzn2extra-php7.4 php-pecl-apcu.x86_64 5.1.18-1.amzn2 @amzn2extra-php7.4 php-xml.x86_64 7.4.11-1.amzn2 @amzn2extra-php7.4 php-xmlrpc.x86_64 7.4.11-1.amzn2 @amzn2extra-php7.4
php-json
php-xmlrpc
php-pecl-apcu
は8.2にない
cat php74-list.txt | awk 'BEGIN {print "yum install -y \\"} {print $1 " \\"} END {print ""}' > install-php.sh
install-php.sh を編集
8.2にない
php-json
php-xmlrpc
php-pecl-apcu
を削除して
sh install-php.sh amazon-linux-extras disable php7.4 amazon-linux-extras enable php8.2 systemctl stop httpd php-fpm yum remove "php*" yum install php-cli php-common php-devel php-fpm php-gd php-intl php-mbstring php-mysqlnd php-opcache php-pdo php-xml
apcu
yum install php-pear pecl channel-update pecl.php.net pecl install apcu
7.4で変更したconfは .rpmsave で保存されている。差分を確認して適宜更新
diff /etc/php.ini.rpmsave /etc/php.ini diff /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.conf.rpmsave 起動 systemctl start httpd php-fpm
参考