Laravel・PHP入門

PHPer初心者

【環境構築】【AWS / Laravel】Amazon Linux2 + Laravelで環境構築

割とつまづいたのでメモ。

構築する環境

更新

$ sudo su // 更新するので権限変更
# yum update // 全部アップデート

日付設定

# cp /usr/share/zoneinfo/Japan /etc/localtime
# yum install ntp
# vi /etc/sysconfig/clock

ZONE="UTC"
UTC=true

ZONE="Asia/Tokyo"
UTC=false

# vi /etc/sysconfig/ntpd

OPTIONS="-g"

OPTIONS="-g -x"

# systemctl restart ntpd.service
# date
2018年 7月 15日 日曜日 21:02:54 JST // 現在時刻が出ればok

Apacheをインストールする

# yum install httpd
# /usr/sbin/httpd -v

Server version: Apache/2.4.33 ()
Server built: Jury 15 2018 21:37:52 // インストールできればok

# systemctl start httpd.service // CentOS7でcommand変わったので注意
# systemctl stop httpd.service

Apache設定

// オリジナルコピー
# cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.`date +%Y%m%d`

// httpd.confをいじります
# vi /etc/httpd/conf/httpd.conf

## ドキュメントルート
DocumentRoot "/var/www/html"

DocumentRoot "/var/www/sample/public" // 今回もしsampleというディレクトリ名なら

## アクセス上書き

AllowOverride None

AllowOverride All

## Apacheのバージョン秘匿
(下の方に追加)
# Hide Apache Version
ServerTokens Prod

#service httpd configtest // 編集後テスト
Syntax OK // OKが出ればok

PHPインストール

# amazon-linux-extras install php7.2 // AWS公式の通り
# php -v // 7.2が出てくるはず
# yum -y install php-devel php-pdo php-mbstring php-mcrypt php-mysqlnd php-xml php-gd php-opcache php-pecl-zip
// PHPに必要なパッケージ色々はyumでインストール

Composerインストール

# curl -sS https://getcomposer.org/installer | php
# mv composer.phar /usr/bin/composer // パスが通る場所へ移動
# composer -v
めっちゃComposer!!って出ればok

Gitインストール

# yum install git
# git --version
git version 2.7.5 // 出ればok

npmとnodeとnvmとyarnインストール

# curl --silent --location https://rpm.nodesource.com/setup_8.x | bash -
# yum install nodejs npm
# npm -v
# node -v
# curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
# source ~/.nvm/nvm.sh // パスを通す
# nvm install 6.* // nodeが6系しかいうこと聞いてくれないので6系へ合わせる
// nodeとnvmのインストール順変えても良いかも

# sudo wget https://dl.yarnpkg.com/rpm/yarn.repo -O /etc/yum.repos.d/yarn.repo
# sudo yum install yarn
# yarn --version

Githubへ接続

# cd ~/.ssh
# ssh-keygen -t rsa -C sample@aaa.jp(enter 3回) // 自分のGithubアカウントアドレス
# vim ~/.ssh/config

Host github.com
HostName github.com
IdentityFile ~/.ssh/id_rsa
User Githubのアカウント名

# cat ~/.ssh/id_rsa.pub
※ ブラウザからgihubのSSH keysに追加
# cd /var/www/
# git clone git@github.com:sample/aa.git // 既存リポジトリをクローンする

リポジトリから色々インストールと権限

# cd sample/
# composer install
# yarn install
# yarn run dev
# chmod -R 777 storage
# chmod -R 777 bootstrap/cache

起動する

# systemctl restart sysstat.service // Apache
# cp .env.example .env
# php artisan key:generate

これで環境構築は完了です!

あとはAWSのアドレスへアクセスすればアクセスできるはず