2020年1月頃(?)にやったときの手順
EC2インスタンスに接続
ssh -i 公開鍵ファイル名 ec2-user@IPアドレス
yumアップデート
sudo yum -y update
時刻設定
sudo vim /etc/sysconfig/clock
/etc/sysconfig/clock
ZONE="Asia/Tokyo"
UTC=false
:wq
sudo cp /usr/share/zoneinfo/Japan /etc/localtime
言語設定
sudo vim /etc/sysconfig/i18n
/etc/sysconfig/i18n
LANG=ja_JP.UTF-8
:wq
amazon-linux-extrasを使わないとPHPのバージョンが古いまま
$ sudo amazon-linux-extras install php7.3
$ php -v
$ sudo yum install php-mbstring php-pecl-memcached php-gd php-apcu php-xml
$ sudo yum install httpd
$ sudo systemctl start httpd
$ sudo systemctl enable httpd
$ sudo vi /etc/php.ini
/etc/php.ini
# HTTPヘッダにPHPのバージョンを記載しない(一応セキュリティ上Offにしておいたほうが良い)
# expose_php = On
expose_php = Off
# メモリ上限を引き上げる(結構デフォルトのメモリは少なめなので増やしておくことが多い)
# memory_limit = 128M
memory_limit = 256M
# POST送信の許容サイズを引き上げる
# post_max_size = 8M
post_max_size = 16M
# アップロードファイルの許容サイズを引き上げる(2Mだと画像投稿に際して不足なので増やす)
# upload_max_filesize = 2M
upload_max_filesize = 5M
# timezoneの設定
# date.timezone =
date.timezone = Asia/Tokyo
$ sudo systemctl restart php-fpm
composerインストール 〜 プロジェクト作成
$ curl -sS https://getcomposer.org/installer | php
$ sudo mv ./composer.phar /usr/local/bin/composer
$ cd /var
$ sudo chmod -R 777 www
$ cd www
$ composer create-project --prefer-dist laravel/laravel myapp
$ cd myapp
$ sudo chmod -R 777 storage/logs
# httpd設定
$ sudo vi /etc/httpd/conf/httpd.conf
/etc/httpd/conf/httpd.conf
DocumentRoot "/var/www/myapp/public" # /var/www/htmlから修正
(中略)
<Directory "/var/www/myapp/public"> # /var/www/htmlから修正
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
Require all granted
AllowOverride All
</Directory>
$ sudo systemctl restart httpd
# composer requireなどがメモリー不足と言われるので、その対応
$ free -m
$ sudo /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
$ sudo /sbin/mkswap /var/swap.1
$ sudo /sbin/swapon /var/swap.1
# node.js npmのインストール
$ curl -sL https://rpm.nodesource.com/setup_8.x | sudo bash -
$ sudo yum install -y nodejs
$ node -v
$ npm -v
s3の使用準備
$ composer require league/flysystem-aws-s3-v3
マイグレーションファイルがカラム変更等にも対応できるよう設定
$ composer require doctrine/dbal