##はじめに
AWS EC2インスタンスでwordpressのインストールをしようとしたら少し手間取ったためその時のメモです。
##環境
- サーバ:Amazon EC2(Amazon Linux 2)
- インストールしたもの:httpd(Apache), php, php-mysql, php-mbstring, php-gd, MariaDB
##事象1
Wordpressをダウンロードしてブラウザからインストールページに移動したところ以下のエラーが出ていました。
Your server is running PHP version 5.4.16 but WordPress 5.2.2 requires at least 5.6.20.
###原因
Updating the Minimum PHP Version
PHPバージョンは5.6.20が必須となったようです。
AWSのEC2にてそのまま以下のコマンドを打つとかなり古いバージョンのPHP5.4.16がインストールされているため考慮が必要でした。
# yum install php
###対策
参考:【EC2】WordPressインストール
また、試していないですが、amazon-linux-extrasにてPHP7系をインストールできるようです
Amazon Linux2とAmazon Linuxの違いについて(メモ)
まずは、インストールされてしまっているPHP5系のアンインストール
# yum remove php-*
つづいてremiの追加
# wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# rpm -ivh epel-release-latest-7.noarch.rpm
# yum install -y http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
# yum-config-manager --enable remi-php72
PHP7のインストール
# yum install -y php72 php72-php php72-php-fpm
# ln -s /usr/bin/php72 /usr/bin/php
消してしまった関連モジュールの再インストール
yum install php-mysql php-mbstring php-gd
Apacheの再起動
systemctl restart httpd
これにて、再度インストールページに遷移したら事象1のエラーは消えていましたが、代わりに事象2のエラーが出ていました。
##事象2
Your PHP installation appears to be missing the MySQL extension which is required by WordPress.
###原因
# php -m | grep mysql
インストールは完了していることを確認したが、どうもバージョンがおかしい。5.4.16・・・。
# yum list installed | grep php
php-common.x86_64 5.4.16-46.amzn2.0.2 @amzn2-core
php-gd.x86_64 5.4.16-46.amzn2.0.2 @amzn2-core
php-mbstring.x86_64 5.4.16-46.amzn2.0.2 @amzn2-core
php-mysqlnd.x86_64 5.4.16-46.amzn2.0.2 @amzn2-core
php-pdo.x86_64 5.4.16-46.amzn2.0.2 @amzn2-core
php72.x86_64 2.0-1.el7.remi @remi-safe
php72-php.x86_64 7.2.24-1.el7.remi @remi-safe
php72-php-cli.x86_64 7.2.24-1.el7.remi @remi-safe
php72-php-common.x86_64 7.2.24-1.el7.remi @remi-safe
php72-php-fpm.x86_64 7.2.24-1.el7.remi @remi-safe
php72-php-json.x86_64 7.2.24-1.el7.remi @remi-safe
php72-runtime.x86_64 2.0-1.el7.remi @remi-safe
php72のエイリアスでインストール
# yum install php72-php-mysqlnd php72-php-mbstring php72-php-gd
# yum list installed | grep php
php-common.x86_64 5.4.16-46.amzn2.0.2 @amzn2-core
php-gd.x86_64 5.4.16-46.amzn2.0.2 @amzn2-core
php-mbstring.x86_64 5.4.16-46.amzn2.0.2 @amzn2-core
php-mysqlnd.x86_64 5.4.16-46.amzn2.0.2 @amzn2-core
php-pdo.x86_64 5.4.16-46.amzn2.0.2 @amzn2-core
php72.x86_64 2.0-1.el7.remi @remi-safe
php72-php.x86_64 7.2.24-1.el7.remi @remi-safe
php72-php-cli.x86_64 7.2.24-1.el7.remi @remi-safe
php72-php-common.x86_64 7.2.24-1.el7.remi @remi-safe
php72-php-fpm.x86_64 7.2.24-1.el7.remi @remi-safe
php72-php-gd.x86_64 7.2.24-1.el7.remi @remi-safe
php72-php-json.x86_64 7.2.24-1.el7.remi @remi-safe
php72-php-mbstring.x86_64 7.2.24-1.el7.remi @remi-safe
php72-php-mysqlnd.x86_64 7.2.24-1.el7.remi @remi-safe
php72-php-pdo.x86_64 7.2.24-1.el7.remi @remi-safe
php72-runtime.x86_64 2.0-1.el7.remi @remi-safe
出てくるようになりました。
# php -m | grep mysql
mysqli
mysqlnd
pdo_mysql
再度、インストールページにアクセスしたところインストールの設定画面が表示されました。
お疲れ様でした。