XSERVERにLaravelのプロジェクトをデプロイする手順をまとめてみた。
composerとPHPのリンクを置くディレクトリを作成
XSERVERではcomposerが使えたが、バージョンが低かったために独自にインストールした。また、コマンドラインから使えるPHPのバージョンも5系列だったので、最新バージョンのPHPへのシンボリックリンクをこちらに置くこととする。
ディレクトリを作成
mkdir ~/bin
composerをダウンロードする
https://getcomposer.org/download/ 参照
cd ~/bin
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '906a84df04cea2aa72f40b5f787e49f22d4c2f19492ac310e8cba5b96ac8b64115ac402c8cd292b8a03482574915d1a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
mv composer.phar composer
phpのシンボリックリンクを作成
使いたいバージョンのPHPのパスを調べてシンボリックリンクを作成する。
whereis php
ln -s /opt/php-8.0.12/bin/php ~/bin/php
パスを通す
vi ~/.bashrc
下記を追記する。
export PATH=~/bin:$PATH
設定を反映する。
source ~/.bashrc
Laravelのプロジェクトを配置する
Laravelプロジェクトを置くディレクトリを作成
cd <ドメイン名>
mkdir laravel
GitHubからリポジトリをclone
cd laravel
git clone https://<ユーザー名>:<Personal Access Token>@github.com/<ユーザー名>/<リポジトリ名>
リポジトリがpublicの場合はURLの「<ユーザー名>:<Personal Access Token>@」の部分は不要。
リモートを登録するには…
git remote add origin https://<ユーザー名>:<Personal Access Token>@github.com/<アカウント名>/<リポジトリ名>
Laravelをインストール
cd <Laravelのプロジェクト名>
composer update
公開ディレクトリにLaravelプロジェクトのpublicディレクトリへのシンボリックリンクを作成
ln -s public ~/<ドメイン名>/public_html/<Laravelのプロジェクト名>
エラー時にデバッグ表示をしないように.envを修正
vi .env
APP_DEBUG=false
動作確認
下記のURLでアクセスできる。
https://<ドメイン名>/<Laravelのプロジェクト名>/