GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu18.04にNginxを使用してLaravel5.6PHPフレームワークをインストールする方法

Laravelは、MVC(Model-View-Controller)デザインパターンを実装する無料のオープンソースPHPフレームワークです。 2011年にTaylorOtwellによって作成され、CodeIgniter(CI)フレームワークの高度な代替手段を提供する試みとして作成されました。 2011年にLaravelはバージョン1とバージョン2をリリースし、最新のバージョン5.6には、「artisan」という名前のコマンドライン(CLI)サポート、さまざまなデータベースシステムのサポート、ルートの改善など、より多くの改善された機能が付属しています。

このチュートリアルでは、WebサーバーとしてNginx、PHP-FPM 7.2、およびMariaDBを使用してLaravelバージョン5.6をインストールする方法を段階的に説明します。 Laravel 5.6は、OSバージョンとしてUbuntu18.04を使用するLEMPスタックで実行されます。

CentOS7のLaravel用のこのチュートリアルのバージョンもあります。

何をするか
  1. Ubuntuリポジトリを更新する
  2. Nginxをインストールする
  3. PHP-FPM7.2をインストールします
  4. MariaDBをインストールする
  5. PHPComposerをインストールする
  6. Laravel用にNginx仮想ホストを構成する
  7. Laravelをインストールする
  8. テスト
前提条件
  • Ubuntu18.04サーバー
  • root権限
ステップ1-Ubuntuを更新する

インストールを開始する前に、リポジトリを更新してから、すべてのパッケージを最新バージョンに更新する必要があります。そのためには、まずsshを使用してUbuntuサーバーにログインします。

ssh [email protected]

次に、Ubuntuリポジトリを更新し、システム上のすべてのパッケージを最新バージョンにアップグレードします。

sudo apt update
sudo apt upgrade

サーバーを再起動してから、sshを使用して再接続します。

ステップ2-Nginxをインストールする

このステップでは、Nginx1.14をシステムにインストールします。デフォルトのubuntuリポジトリで利用できます。次のaptコマンドを使用してインストールする必要があります。

sudo apt install nginx -y

インストールが完了したら、nginxサービスを開始し、systemctlコマンドを使用してシステムの起動時に自動的に開始するように追加します。

systemctl start nginx
systemctl enable nginx

Nginxはポート80で実行されています。netstatコマンドを使用して、関連する統計情報を確認してください。

netstat -plntu

または、curlコマンドを使用することもできます。

curl -I localhost
ステップ3-PHP7.2とPHP-FPMをインストールします

Nginxがインストールされたので、システムにPHP-FPMバージョン7をインストールする必要があります。 PHP7.2とLaravelに必要ないくつかのPHP拡張機能をインストールします。

次のコマンドを使用して、必要なすべての拡張機能を備えたPHPおよびPHP-FPM7.2をインストールします。

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

次に、PHP構成ディレクトリに移動し、fpmディレクトリにあるphp.iniファイルを編集します。

cd /etc/php/7.2/
vim fpm/php.ini

次のCGI行のコメントを解除し、値を0に変更します。

cgi.fix_pathinfo=0

それでおしまい。保存して終了します。

これで、PHP-FPMを起動し、システムの起動時に自動的に起動できるようになります。

systemctl start php7.2-fpm
systemctl enable php7.2-fpm

Ubuntuのデフォルトでは、PHP-FPMはsockファイルで実行されています。次の方法でnetstatコマンドを使用してPHP-FPMSockファイルを確認します。

netstat -pl | grep php7.2-fpm

PHPおよびPHP-FPM7.2がUbuntu18.04システムにインストールされています。

ステップ4-MariaDBをインストールする

これはオプションですが、LaravelプロジェクトがMySQLに基づいている場合は、プロジェクトに対してこれを行う必要があります。 MariaDBの最新バージョン10.1をシステムにインストールします。

次のコマンドを使用して、リポジトリからMariaDBをインストールします。

sudo apt install mariadb-server mariadb-client -y

インストールが完了したら、MariaDBを実行し、システムの起動時に起動できるようにします。

systemcl start mysql
systemctl enable mysql

MariaDBはポート3306で起動しました。netstatコマンドを使用して確認してください。

netstat -plntu

次に、以下の「mysql_secure_installation」コマンドを使用してMariaDBルートパスワードを構成します。

mysql_secure_installation

rootパスワードを入力し、匿名ユーザーを削除し、rootログインをリモートで禁止します。

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

MariaDBのインストールと構成が完了しました。

ステップ5-PHPComposerをインストールします

コンポーザーは、PHPプログラミング言語のパッケージマネージャーです。 2011年に作成され、Node.jsの「npm」とRubyの「bundler」という名前に触発されました。 ubuntu 18.04では、composerはリポジトリで利用できるため、aptコマンドを使用してインストールできます。

次のコマンドを使用してPHPComposerをインストールします。

sudo apt install composer -y

インストールが完了したら、「composer」コマンドを実行すると、スクリーンショットに示すような結果が得られます。

composer

PHPComposerがUbuntu18.04にインストールされています。

ステップ6-Laravel用にNginx仮想ホストを構成する

このステップでは、Laravel用にnginx仮想ホストを構成します。ただし、その前に、Laravelプロジェクトのディレクトリを決定する必要があります。この例では、プロジェクトに「/ var / www/laravel」ディレクトリを使用します。 mkdirで作成するだけです。

mkdir -p /var/www/laravel

次に、nginx構成ディレクトリに移動し、「sites-available」ディレクトリの下に新しい仮想ホストファイル「laravel」を作成します。

cd /etc/nginx/
vim sites-available/laravel

次の構成をそこに貼り付けます。

server {
         listen 80;
         listen [::]:80 ipv6only=on;
 
         # Log files for Debugging
         access_log /var/log/nginx/laravel-access.log;
         error_log /var/log/nginx/laravel-error.log;
 
         # Webroot Directory for Laravel project
         root /var/www/laravel/public;
         index index.php index.html index.htm;
 
         # Your Domain Name
         server_name laravel.hakase-labs.co;
 
         location / {
                 try_files $uri $uri/ /index.php?$query_string;
         }
 
         # PHP-FPM Configuration Nginx
         location ~ \.php$ {
                 try_files $uri =404;
                 fastcgi_split_path_info ^(.+\.php)(/.+)$;
                 fastcgi_pass unix:/run/php/php7.2-fpm.sock;
                 fastcgi_index index.php;
                 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                 include fastcgi_params;
         }
 }

それでおしまい。保存して終了します。

次に、「laravel」ファイルの「sites-enabled」ディレクトリへのシンボリックリンクを作成して、仮想ホストをアクティブ化します。

次に、nginx構成をテストし、エラーがないことを確認します。

ln -s /etc/nginx/sites-available/laravel /etc/nginx/sites-enabled/
nginx -t

Laravel用のNginx仮想ホストが作成されました。ここで、nginxサービスを再起動します。

systemctl restart nginx

ステップ7-Laravelをインストールする

Laravelのインストールを開始する前に、unzipユーティリティがシステムにインストールされていることを確認してください。ツールがない場合は、次のコマンドを使用してインストールします。

sudo apt install unzip -y

Laravelのディレクトリはすでに定義されています:'/ var / www/laravel'ディレクトリ。そのディレクトリに移動します。

cd /var/www/laravel

composerコマンドでLaravelをインストールします。 Laravelをインストールするには、Laravelインストーラーを介したインストールとComposercreateプロジェクトを介したインストールの2つの方法があります。

コンポーザー作成プロジェクトを介して最新のLaravelバージョン5.6をインストールします。

次のcomposerコマンドを実行します。

composer create-project laravel/laravel .

Laravelのインストールを待つ必要があります。

Laravelのインストールが完了しました。

Laravelプロジェクトディレクトリの所有権を「www-data」ユーザーに変更し、ストレージディレクトリの権限を755に変更する必要があります。

chown -R www-data:root /var/www/laravel
chmod 755 /var/www/laravel/storage

Laravelのインストールはエラーなしで完了しました。

ステップ8-テスト

仮想ホスト構成ファイルでは、Laravelのドメイン名「laravel.hakase-labs.co」をすでに定義しています。

Webブラウザーを開き、Laravelをインストールしたドメインにアクセスします。ここで、テストサーバーにあるのは http://laravel.hakase-labs.co/です。

そして、Laravelのホームページが表示されるはずです。

Ubuntu 18.04でのNginx、PHP-FPM 7.2、MariaDBを使用したLaravelのインストールは成功しています。

参照
  • https://laravel.com/docs/5.6/installation

Ubuntu
  1. Ubuntu 18.04 /Ubuntu16.04にPHP7.4/ 7.3/7.2をインストールする方法

  2. Ubuntu14.04にPHP7をインストールする方法

  3. Ubuntu15.04にPHP7をインストールする方法

  1. Ubuntu18.04にLaravelをインストールする方法

  2. Ubuntu14.04にNginxでSymfony3Frameworkをインストールする方法

  3. Ubuntu20.04にNginxを使用してPHP7.4をインストールする方法

  1. Apacheを使用してUbuntu18.04にLaravelをインストールする方法

  2. Ubuntu20.04にLaravelPHPWebフレームワークをインストールする方法

  3. Ubuntu16.04にNginxを使用してSuiteCRMをインストールする方法