環境
さくらVPS
CentOS 7
PHP 7.3.1
MySQL 5.6
Git 1.8.3.1
Composer 1.9.3
Bitbucket
はじめに
Apache, PHP, phpMyAdmin, MySQL, Composer, Gitのインストールは終わっているものとします。
VirtualHostを使用しているため、他にもプロジェクトが複数ある中でのデプロイになります。
手順
①sshでサーバーに接続。
②データベースを作成
phpMyAdminにログインしLaravelアプリケーション用のデータベースを作成する。
照合順序はutf8_general_ciで設定しました。
③Laravelアプリケーションを設置。
# wwwに移動
cd /var/www
# Laravelを設置するディレクトリを作る。
mkdir example
cd example
# Laravelをgit cloneで持ってくる。 ○○○の部分は自分のBitbucketの環境に合わせる。
# GitHubを使っている場合はGitHubのcloneコマンド打てばOKだと思います。
git clone git@bitbucket.org:○○○/example.git
# クローンしたLaravelアプリケーションに移動しておく。
cd example
④.envを作成する。【】内に変更。
cp .env.example .env
vi .env
# viコマンドで下記が出てくるので適宜変更していく
APP_ENV=【production】
APP_URL=【アプリケーションのURL】
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=【データベース名】
DB_USERNAME=【データベースのユーザー名】
DB_PASSWORD=【パスワード】
⑤Laravelセットアップ
php artisan key:generate
⑥apacheの設定
# confファイルまで移動します。
cd /etc/httpd/conf.d/
# confファイルのバックアップを取っておきます。
cp vhost.conf vhost.conf_日付
# vhost.confの編集
vi vhost.conf
# 以下を最下部に書く
<VirtualHost *:80>
DocumentRoot /var/www/example/【アプリケーション名】/public
ServerName ○○○○○○○○○.com
<Directory "/var/www/example/【アプリケーション名】/public">
#Options FollowSymLinks
Options All
AllowOverride All
Require all granted
</Directory>
ErrorLog logs/【アプリケーション名】_error_log
CustomLog logs/【アプリケーション名】_access_log
</VirtualHost>
# apacheの再起動
systemctl restart httpd
⑦アプリケーションディレクトリまで移動しstorageとbootstrap/cacheを権限を変更する
chmod -R 775 example/【アプリケーション名】/storage
chmod -R 775 example/【アプリケーション名】/bootstrap/cache
⑧マイグレーションを行う
php artisan migrate
あとは設定したドメインでアクセスして表示できればOKです。