1.Apache2.4のインストール
$ sudo yum install httpd
すんなりインストールできるはずです。
# httpdを起動
$ sudo systemctl start httpd
# 動いているか確認 ( active (running) )とか表示されるはず
$ sudo systemctl status httpd
# システム起動時に毎回起動するように設定
$ sudo systemctl enable httpd
# 確認(enabled)と表示されていば成功
$ sudo systemctl is-enabled httpd
2./var/www/html以下のフォルダをapacheグループに所属するec2-userが所有できるようにする
# ユーザー (この場合は ec2-user) を apache グループに追加する
$ sudo usermod -a -G apache ec2-user
# sshをログアウトし、再度sshログインしてください
$ exit
$ groups
ec2-user adm wheel apache systemd-journal
# /var/www とそのコンテンツのグループ所有権を apache グループに変更する
$ sudo chown -R ec2-user:apache /var/www
# グループの書き込み許可を追加して、これからのサブディレクトにグループ ID を設定する
$ sudo chmod 2775 /var/www && find /var/www -type d -exec sudo chmod 2775 {} \;
# グループ書き込み許可を追加するために、/var/www とサブディレクトリのファイル許可を再帰的に変更する
$ find /var/www -type f -exec sudo chmod 0664 {} \;
3.PHP7.3のインストール
# amazonのリポジトリを調査する
$ amazon-linux-extrasbled httpd
# php7.3の詳細を確認する
$ amazon-linux-extras info php7.3
# php7.3インストールコマンド
$ sudo amazon-linux-extras install php7.3
# 拡張モジュール一覧を表示する
$ yum list php* | grep amzn2extra-php7.3
# 拡張モジュールインストール
$ sudo yum install php-cli php-common php-devel php-fpm php-gd php-mysqlnd php-mbstring php-pdo php-xml
4.php.iniの設定
# 失敗した時のためにバックアップを取っておく
$ sudo cp /etc/php.ini /etc/php.ini.default
# viでファイルを開いて編集(保存は同じく:wq)
$ sudo vi /etc/php.ini
php.ini
# HTTPヘッダにPHPのバージョンを記載しない
# expose_php = On
expose_php = Off
# メモリ上限を引き上げる
# memory_limit = 128M
memory_limit = 512M
# エラーログのパスを変更
# error_log = errors.log
error_log = /var/log/php_errors.log
# POST送信の許容サイズを引き上げる
# post_max_size = 8M
post_max_size = 16M
# アップロードファイルの許容サイズを引き上げる
# upload_max_filesize = 2M
upload_max_filesize = 8M
# timezoneの設定
# date.timezone =
date.timezone = Asia/Tokyo
# 文字コード検出のデフォルト値を定義
mbstring.detect_order = auto
5.Apacheのバーチャルホストの設定
#設定ファイル作成
$ sudo vi /etc/httpd/conf.d/vhost.conf
vhost.conf
# 下記のようにバーチャルホストを作成する
<VirtualHost *:80>
ServerName www.example.jp
DocumentRoot /var/www/back/www.example.jp
<Directory "/var/www/back/www.example.jp">
Options Indexes FollowSymlinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
# httpdを再起動
$ sudo systemctl restart httpd