LaravelはPHPフレームワークであり、NginxはUbuntuにインストールできるWebブラウザーです。 Nginxは軽量であるため、最近人気があります。ここでは、LaravelアプリケーションをNginxにデプロイします。
まず、サーバーにNginxとPHP-FPMがインストールされている必要があります。 PHP-FPMとNginxをインストールして構成するには、このリンクをクリックしてください。すでにインストールされていると思われるので、さらに進んでいきます。
Nginx仮想ホストファイルを編集してLaravelアプリケーションをデプロイするため、rootまたはsudoユーザーでサーバーにアクセスする必要があります。
- Ubuntuリポジトリをそのパッケージで更新します。
# sudo apt update
# sudo apt upgrade
- サーバーを1回再起動しましょう。
- サーバーが起動したら、以下のコマンドを使用してNginxをインストールします。
# sudo apt install nginx -y
- PHP7.2とPHP-FPMをインストールします。
# sudo apt install php7.2 php7.2-curl php7.2-common php7.2-cli php7.2-mysql php7.2-mbstring php7.2-fpm php7.2-xml php7.2-zip -y
- php7.2を起動して有効にする
# systemctl start php7.2-fpm
# systemctl enable php7.2-fpm
- 以下のコマンドを使用して、sockeファイルで実行されているPHP-FPMを確認できます。
# netstat -pl | grep php7.2-fpm
- 以下のコマンドを使用してMariaDBをインストールします。
# sudo apt install mariadb-server mariadb-client -y
- MariaDBを起動して有効にします。
# service mysql start
# service enable mysql
- ここでは、MariaDBのrootパスワードを「mysql_secure_installation」で構成します
#mysql_secure_installation
Set root password? [Y/n] Y Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
- 以下のコマンドでPHPComposerをインストールします。
# sudo apt install composer -y
- composerコマンドを実行すると、以下と同じ画面が表示されます。これは、コンポーザーがPHPComposerがインストールされていることを意味します。
#composer
- Laravel用にnginx仮想ホストを構成しましょう。ここでは、プロジェクトに「/ var / www/laravel_tet」ディレクトリを使用します。まず、同じディレクトリを作成します。
# mkdir -p /var/www/laravel_test
- エラーがないことを確認するためにnginxをテストする必要があります。
ln -s /etc/nginx/sites-available/laravel_test /etc/nginx/sites-enabled/nginx -t
- nginxサービスを再起動します。
# service nginx restart
- 前に定義したlaravel_testフォルダーに移動します。
# cd /var/www/laravel_test
- 次のcomposerコマンドを実行してLaravelをインストールします。
# composer create-project laravel_test/laravel_test
- ここで、Laravelプロジェクトディレクトリの所有権を「www-data」ユーザーに変更します。ストレージディレクトリの権限を755に変更します。
# chown -R www-data:root /var/www/laravel_test
# chmod 755 /var/www/laravel_test
- Laravelをテストするには、仮想ホスト構成ファイルに追加したドメイン名にアクセスする必要があります。ドメイン名にアクセスすると、laravelのホスト名が表示されます。