ウェブサイト検索

Ubuntu 20.04にNginxを使用してLaravel PHPフレームワークをインストールする方法


Laravel は、世界で最も人気のある無料のオープンソース PHP フレームワークで、表現力豊かでエレガントな構文で知られています。 Laravel はアクセスしやすく強力で、大規模で堅牢な最新のアプリケーションに必要な最高の Web 開発ツールをいくつか提供します。

この記事では、Nginx ウェブサーバー上で実行されているUbuntu 20.04 サーバーにLaravel PHP フレームワークをインストールする方法を学びます。

前提条件

  • Ubuntu 20.04 で PhpMyAdmin を使用して LEMP スタックをインストールする方法

ステップ 1: 必要な PHP モジュールのインストール

上記リンクのガイドの説明に従って Ubuntu 20.04 サーバーに LEMP スタックをセットアップした後、次のように Laravel に必要な追加の PHP 拡張機能をインストールする必要があります。

sudo apt update
sudo apt php-common php-json php-mbstring php-zip php-xml php-tokenizer

ステップ 2: Laravel 用のデータベースを作成する

次に、Laravel アプリケーション用のMySQL データベースを作成する必要があります。したがって、mysql シェルにログインし、次のようにデータベースを作成します。

sudo mysql
MariaDB [(none)]> CREATE DATABASE laraveldb;
MariaDB [(none)]> GRANT ALL ON laraveldb.* to 'webmaster'@'localhost' IDENTIFIED BY 'tecmint';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> quit

ステップ 3: Ubuntu 20.04 に Composer をインストールする

Laravel は、コンポーザー (PHP の依存関係マネージャー) を利用して依存関係を管理します。したがって、Laravel を使用する前に、 図に示すようにComposer がシステムにインストールされていることを確認してください。

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
sudo chmod +x /usr/local/bin/composer

ステップ4: Ubuntu 20.04にLaravelをインストールする

コンポーザーをインストールしたら、それを使用してLaravel ファイルをインストールします。 Web ファイルが保存されている /var/www/html ディレクトリに移動し、次に示すようにコンポーザーを使用して Laravel をインストールします。 example.com を、Laravel ファイルが保存されるディレクトリの名前に忘れずに置き換えてください。

cd /var/www/html
composer create-project --prefer-dist laravel/laravel example.com

ステップ5: Ubuntu 20.04でのLaravelの構成

新しいLaravel インストールの内容を一覧表示するには、次の ls コマンドを実行します。以前は手動で作成する必要があった .env ファイルが自動的に作成されたことがわかります。

ls -la /var/www/html/example.com/

次に、 次のようにLaravel ディレクトリに適切な権限を設定します。

sudo chown -R :www-data /var/www/html/example.com/storage/
sudo chown -R :www-data /var/www/html/example.com/bootstrap/cache/
sudo chmod -R 0777 /var/www/html/example.com/storage/
sudo chmod -R 0775 /var/www/html/example.com/bootstrap/cache/

次に、Laravel はアプリケーション キーを使用して、ユーザー セッションとその他の暗号化されたデータを保護します。デフォルトの .env にはデフォルトのアプリケーションキーが含まれていますが、セキュリティ上の理由から、laravel デプロイメント用に新しいアプリケーションキーを生成する必要があります。

sudo php artisan key:generate

生成されたキーは、APP_KEY の値として .env ファイルに追加されます。 grep コマンドを使用して追加されたキーを表示できます。

grep -i APP_Key /var/www/html/example.com/.env

次のスクリーンショットに示すように、.envLaravel データベース接続の詳細を構成する必要もあります。

sudo nano /var/www/html/example.com/.env

ステップ 6: Laravel アプリケーションを提供するための NGINX の構成

NGINX が新しいアプリケーションを提供できるようにするには、NGINX 構成内の /etc/nginx/sites-available/ ディレクトリの下に、そのためのサーバー ブロックを作成する必要があります。

sudo nano /etc/nginx/sites-available/example.com.conf

以下の構成では、ルート ディレクティブを Laravel アプリケーションのパブリック ディレクトリに更新し、www.example.com を図のように Web サイトのドメイン名に置き換えてください。

また、fastcgi_pass ディレクティブは、PHP-FPM がリクエストをリッスンしているメディアを指すように設定します (例: fastcgi_pass unix:/run/php/php7.4) -fpm.sock):

server{
        server_name www.example.com;
        root        /var/www/html/example.com/public;
        index       index.php;

        charset utf-8;
        gzip on;
        gzip_types text/css application/javascript text/javascript application/x-javascript  image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;
        location / {
                try_files $uri $uri/ /index.php?$query_string;
        }

        location ~ \.php {
                include fastcgi.conf;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/run/php/php7.4-fpm.sock;
        }
        location ~ /\.ht {
                deny all;
        }
}

ファイルを保存し、/etc/nginx/sites-available/example.com.conf から /etc/nginx/sites-enabled/ へのリンクを作成して、Laravel サイト構成を有効にします。 ディレクトリ。さらに、デフォルトのサーバーブロック構成を削除します。

sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/
sudo rm /etc/nginx/sites-enabled/default

次に、サービスを再起動する前に次のコマンドを実行して、NGINX 構成構文が正しいかどうかを確認します。

sudo nginx -t
sudo systemctl restart nginx

ステップ7: WebブラウザからLaravelアプリケーションにアクセスする

この段階では、Laravel デプロイメントが正常に動作しているかどうか、またブラウザからアクセスできるかどうかをテストする必要があります。ダミー ドメイン example.com を使用するには、ローカル コンピューター上の /etc/hosts ファイルを使用してローカル DNS を作成しましょう。

次のコマンドを実行して、Laravel サーバーの IP アドレスを取得し、それを /etc/hosts ファイルに追加します (設定に従って値を置き換えます)。
$IP 広告
$echo “192.168.56.11 example.com” | sudo tee -a /etc/hosts

次に、ローカル コンピュータで Web ブラウザを開き、次のアドレスを使用して移動します。

http://www.example.com/

これでLaravel がインストールされたので、Web アプリケーションまたはサイトの構築を開始できます。詳細については、Laravel のドキュメントを参照してください。