こんな悩みを解決できる記事を書きました!
僕は現役フリーランスエンジニア(歴9年)で、資格は13個保有しています。
AWS EC2上でPHPのバージョンアップを行う場合は、「amazon-linux-extras」というコマンドを使用します。
「amazon-linux-extras」を使えばPHPのバージョンアップを簡単に行えます。
本記事を読めば、AWS EC2上でPHPのバージョンアップを行う方法が理解できますよ!
すぐに読み終わるので、ぜひ最後まで読んでくださいね♪
【前提】環境&バージョン
今回実施した環境とバージョン情報は以下の通りです。
PHP | 7.2 |
サーバ | EC2(AWS) |
OS | Amazon Linux |
PHPのバージョンは上げなきゃいけない?
PHPには「アクティブサポート」や「セキュリティサポート」などのサポートが存在します。
サポートには各バージョン毎に期間が設けられており、期間を過ぎるとサポート切れになります。
セキュリティ的にもバージョンを上げておくのは大切です。
バージョンアップ前にやるべきこと
バージョンアップ前にテスト環境で一通りの動作確認をしておきましょう。
動作確認することで、バージョンアップ前は問題なく動いていたことを担保できます。
バージョンアップに失敗して焦ると色々なコマンドを実行しがちです。
結果的に何が悪かったのか分からなくなるので注意してくださいね。
AWS EC2上でPHPのバージョンアップを行う手順
では実際に、PHPのバージョンアップ手順を解説します。
今回は、バージョン管理コマンドの「amazon-linux-extras」を使用します。
バックアップ
$ cd /etc
$ mkdir backup_20200924
$ cp -r php* backup_20200924
$ ls backup_20200924/
まずは、php関連のファイルをバックアップします。
バージョンアップ
$ php -v
PHP 7.2.30 (cli) (built: May 5 2020 18:04:45) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
PHPのバージョンを確認します。
ワーニングが出ないことを確認しましょう。
$ which amazon-linux-extras
/usr/bin/amazon-linux-extras
「amazon-linux-extras」がインストールされているのを確認します。
$ amazon-linux-extras
割愛
41 postgresql11 available [ =11 =stable ]
_ php7.4 available [ =stable ]
43 livepatch available [ =stable ]
44 python3.8 available [ =stable ]
45 haproxy2 available [ =stable ]
利用可能なトピックを確認します。
$ yum update -y amazon-linux-extras
利用したいパッケージがない場合、yumでamazon-linux-extrasを最新化します。
$ amazon-linux-extras disable php7.2
現在有効なPHPを無効にします。
php7.2の箇所がavailableであれば無効、enableであれば有効です。
$ amazon-linux-extras enable php7.4
割愛
Now you can install:
# yum clean metadata
# yum install php-cli php-pdo php-fpm php-json php-mysqlnd
PHP7.4を有効にします。
$ yum clean metadata && yum install php-cli php-pdo php-fpm php-json php-mysqlnd
先ほど表示されたコマンドを実行します。
$ yum list installed php-cli php-pdo php-fpm php-json php-mysqlnd
インストール確認を行います。
$ which php
インストール確認を行います。
$ php -v
PHPのバージョンを確認します。
$ systemctl restart httpd.service
Apacheの再起動を行います。
$ systemctl restart php-fpm.service
php-fpmの再起動を行います。
これで完了です!
簡単でしたね♪
AWS EC2上でPHPのバージョンアップを行う際の注意点
AWS EC2上でPHPのバージョンアップを行う際の注意点は以下の通りです。
- いきなり本番環境で実施しない
- 下位互換性を確認する
いきなり本番環境で実施しない
当たり前ですが、バージョンアップする際はいきなり本番環境で実施するのはやめましょう。
本番相当の検証環境で事前に実施し、エラーがないことを確認した上で本番作業を行いましょう。
下位互換性を確認する
下位互換性がない機能を使用していると、バージョンアップすることで動作しなくなる可能性があります。
公式サイトで事前に確認しておきましょう。
よくある質問
PHPのバージョンは上げるべきですか?
セキュリティの観点から最新化を推奨します。
バージョンアップ時の注意点はありますか?
以下の点に注意してください。
- いきなり本番環境で実施しない
- 下位互換性を確認する
まとめ
今回は、AWS EC2上でPHPのバージョンアップを行う方法について解説しました。
以下が本記事のまとめになります。
最後までお読みいただき、ありがとうございました!
- クソおすすめ本
海外のエンジニアがどういった思考で働いているかが理解できます。
海外に行く気はないけど海外エンジニアの動向が気になる雑魚エンジニアにおすすめです(本当におすすめな本しか紹介しないのでご安心を)。