環境
・XServer (プラン:X10)
・Laravel 5.6、5.7
・PHP 7.2.17
・Git (CodeCommit)
Git インストール
インストール状況を確認します。
$ git --version
git version 1.8.3.1
インストールされているようなので、こちらをこのまま利用します。
CodeCommit 接続設定
今回は、すでに検証環境で利用していたアカウント情報を使用するため、~/.ssh 配下に秘密鍵を設置し、config ファイルを作成します。
$ vi ~/.ssh/config
SSH 接続情報として、以下を追加します。
Host git-codecommit.*.amazonaws.com
User SSHキーID
IdentityFile ~/.ssh/codecommit
コマンドから実行するPHPバージョン確認
$ php -v
PHP 5.4.16 (cli) (built: Oct 30 2018 19:30:51)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
with Zend OPcache v7.0.5, Copyright (c) 1999-2015, by Zend Technologies
Laravel 5.6、5.7 共にPHPバージョンの7.1.3以上が必要となり、バージョン が足りていないとcomposer install 時にエラーとなります。
$ composer install
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.
Problem 1
- This package requires php ^7.1.3 but your HHVM version does not satisfy that requirement.
Problem 2
- Installation request for laravel/framework v5.8.7 -> satisfiable by laravel/framework[v5.8.7].
- laravel/framework v5.8.7 requires php ^7.1.3 -> your PHP version (7.1.2) does not satisfy that requirement.
利用可能なPHPのバージョン を確認します。
$ find /opt/php-*/bin -type f -name 'php'
/opt/php-5.1.6/bin/php
/opt/php-5.3.3/bin/php
〜省略〜
/opt/php-7.2.14/bin/php
/opt/php-7.2.16/bin/php
/opt/php-7.2.17/bin/php
/opt/php-7.2.20/bin/php
/opt/php-7.2.6/bin/php
/opt/php-7.2/bin/php
/opt/php-7.3.4/bin/php
/opt/php-7.3.8/bin/php
/opt/php-7.3/bin/php
XServerのコントロールパネルで設定しているバージョン と同じ7.2.17を設定します。
HOME直下にbinディレクトリを作成し、該当バージョンのディレクトリとシンボリックリンクをはります。
$ mkdir $HOME/bin
$ ln -s /opt/php-7.2.17/bin/php $HOME/bin/php
パス設定
$ vi ~/.bash_profile
# 以下を追加し、保存
export PATH=$HOME/bin:$PATH
編集を反映させます。
$ source ~/.bash_profile
PHPのバージョンを確認します。
$ php -v
PHP 7.2.17 (cli) (built: Apr 13 2019 01:04:33) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
無事にバージョンアップできているため完了
ソースコードクローン
ドメイン名のディレクトリ配下にソースコードを配置していきます。
$ cd /home/path/domain.com/
$ git clone <リポジトリURL> project
Laravelセットアップ
.env ファイルを設定していきます。
$ cp .env.example .env
$ vi .env
内部で使用するAPP_KEY を生成します。
$ php artisan key:generate
ログファイルやキャッシュのディレクトリのパーミッションを 777 に設定します。
$ chmod -R 777 storage
$ chmod -R 777 bootstrap/cache/
マイグレーション実行し、テーブルを作成します。
$ php artisan migrate
必要な場合には、シーディングを実施します。
$ php artisan db:seed
公開ディレクトリ(public_html)設定
クローンしたプロジェクトの public ディレクトリとサーバーのドキュメントルートとのシンボリックリンクを設定します。
/home/path/domain.com
project/ ← Laravel アプリのディレクトリ
app/
bootstrap/
public/
~省略~
public_html/
.htaccess
public ← ../project/public/ へのシンボリックリンク
$ ln -s /home/path/domain.com/project/public ./public
.htaccess を開きリライトの設定を行い、すべてのリクエストを同階層の public 以下に書き換えるだけの設定です。
$ cd /home/path/domain.com/public_html
$ vi .htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [QSA,L]
</IfModule>
コメント