展開する


改善点

  • オートローダーの改善
  • 設定読み込みの改善
    • ルート読み込みの改善
  • Forge を使用したデプロイ
    • #はじめに
    • Laravel アプリケーションを運用環境にデプロイする準備ができたら、アプリケーションが可能な限り効率的に実行されるように、いくつかの重要な点に必ず注意してください。この記事では、
    • Laravel
    アプリケーションが適切にデプロイされていることを確認するためのいくつかの重要なポイントについて説明します。

#サーバー構成

Nginxアプリケーションを Nginx サーバーにデプロイする場合は、開始点として次の構成ファイルを使用して

Web

サーバーを構成できます。おそらく、このファイルはサーバー構成に基づいてカスタムの変更が必要になります。サーバー管理のサポートが必要な場合は、Laravel Forge の使用を検討してください:

server {
    listen 80;
    server_name example.com;
    root /example.com/public;

    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Content-Type-Options "nosniff";

    index index.html index.htm index.php;

    charset utf-8;

    location / {
        try_files $uri $uri/ /index.php?$query_string;    }

    location = /favicon.ico { access_log off; log_not_found off; }
    location = /robots.txt  { access_log off; log_not_found off; }

    error_page 404 /index.php;

    location ~ \.php$ {
        fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; 
        include fastcgi_params;  
         }

    location ~ /\.(?!well-known).* {
        deny all;   
         }
     }

改善点

##オートローダーの改善点

アプリケーションを運用環境にデプロイする準備ができたら、最適化されていることを確認してください。 Composer クラスのオートローディング マッピング。これにより、Composer は特定のクラスをロードするための正しいローディング ファイルをすぐに見つけることができます。

composer install --optimize-autoloader --no-dev

ヒント: オートローダーの最適化に加えて、以下も必ず含める必要があります。プロジェクト リポジトリ内の

composer.lock ファイル。プロジェクト コードに composer.lock ファイルがあると、プロジェクトに必要な依存関係をより速くインストールできます。

#構成の読み込みを最適化する

アプリケーションを運用環境にデプロイするときは、# を実行する必要があります。 ##config:cache

デプロイメント中のアーティザン コマンド:

php artisan config:cache
このコマンドは、すべての Laravel 設定ファイルをキャッシュ ファイルにマージし、フレームワークが設定値をロードする時間を大幅に短縮します。ファイルシステムにアクセスする必要があります。

{note} デプロイ中に

config:cache
コマンドを実行する場合は、設定ファイルから

env 関数のみを呼び出すようにしてください。 。構成がキャッシュされると、.env ファイルはロードされず、env 関数へのすべての呼び出しは null を返します。

ルート読み込みの最適化
多くのルートを持つ大規模なアプリケーションを構築する場合は、次のことを行う必要があります。デプロイ中に必ず

route:cache

Artisan コマンドを実行してください:

php artisan route:cache
このコマンドは、すべてのルート登録をキャッシュ ファイル内の 1 つのメソッド呼び出しに減らすため、数百のルート登録が行われます。ルーティング時のルート登録のパフォーマンス。

{note} この機能は PHP シリアル化を使用するため、特にコントローラーベースのルーティングを使用するアプリケーション ルートのみをキャッシュできます。 PHP はクロージャ ルートをシリアル化できません。

Forge を使用したデプロイ
独自のサーバー構成を管理する準備ができていない場合、またはそうでない場合強力な Laravel アプリケーションを実行するために必要なさまざまなサービスの構成に慣れている場合は、Laravel Forge が適しています。

Laravel Forge は、さまざまなインフラストラクチャプロバイダー (DigitalOcean、Linode、AWS など) 上にサーバーを作成できます。さらに、Forge は、Nginx、MySQL、Redis、Memcached、Beanstalk など、強力な Laravel アプリケーションを構築するために必要なすべてのツールをインストールして管理します。

この記事は、

LearnKu.com

Web サイトで初めて公開されました。