Ubuntu 18.04 Bionic Beaver LinuxにLaravelをインストールしてホストする
目的
Ubuntu 18.04にNginxおよびMariaDBとともにLaravelをインストールする分布
Ubuntu 18.04バイオニックビーバー必要条件
root権限を持つUbuntu 18.04の作業インストール困難
かんたん規約
- # -与えられたLinuxコマンドは、rootユーザーとして直接、または
sudo
コマンドを使用して、root権限で実行する必要があります - $ -特定のLinuxコマンドを通常の非特権ユーザーとして実行する必要があります
前書き
Laravelは、トップのPHPフレームワークとしてすぐにその地位を獲得しました。Railsのような他のフレームワークに見られる多くの開発者フレンドリーな機能をPHPエコシステムにもたらし、そうすることで最新のPHP開発を実現しました。Laravelで開発したり、Ubuntu 18.04でホストしたりする場合、セットアッププロセスはこれまでになく簡単になりました。LaravelはPHPであるため、これを処理する方法はいくつかありますが、NginxとMariaDBは、プロジェクトを最新の本番環境対応のツールで実行するためのかなり簡単な方法を提供します。
パッケージをインストールする
すべての設定を開始する前に、必要なパッケージがいくつかあります。これらはすべてUbuntuのリポジトリで利用でき、Bionicでもかなり最新のものであるため、他の場所を探す必要はありません。$ sudo apt install composer php-mysql php-fpm php-mbstring php-tokenizer php-xml php-json php-common nginx mariadb-server彼らはもっと引き込みますが、それほど悪くはありません。
Lavavelプロジェクトを作成する
次に行う必要があるのは、Laravelプロジェクトを開始することです。これもそれほど大きなタスクではありません。以前にインストールしたComposerパッケージは、ほぼすべてを処理し、機能するLaravelインストールをそのまま使用できるようにします。まず、ディレクトリを自分の
/var/www/
ディレクトリに変更します。これはNginxで提供されるため、サイトを整理するのに最適な場所です。$ cd /var/www次に、Composerを使用してプロジェクトを作成します。末尾の名前は、プロジェクトとそれを含むフォルダーの名前です。それに応じて選択してください。
$ sudo composer create-project --prefer-dist laravel/laravel yourProject

Ubuntu 18.04にComposerでLaravelをインストールする
$ sudo chown -R www-data:www-data yourProject
データベースを設定する
次に、データベースを設定する必要があります。何かを追加する前に、サーバーを保護します。$ sudo mysql-secure-install確認して、ルートパスワードを設定し、安全なデフォルトを使用します。これで、MariaDBにサインインして、Laravelが使用するデータベースを設定できます。
$ sudo mysql -u root -pいったん入ったら、データベースの作成から始めます。
> CREATE DATABASE laravel;次に、そのデータベースを使用するユーザーを作成します。
> CREATE USER `user`@`localhost` IDENTIFIED BY 'yourpassword';そのデータベースを使用する権限をそのユーザーに付与します。
> GRANT ALL ON laravel.* TO `user`@`localhost`;最後に、特権をフラッシュして終了します。
> FLUSH PRIVILEGES;
Laravelを接続する
デフォルトでは、LaravelはMySQL(MariaDB)を使用するように構成されていますが、設定したデータベースに接続するための適切な情報をそれに提供する必要があります。
Ubuntu 18.04でLaravelデータベースを構成する
config
が、フォルダを。そのフォルダー内には、データベース構成ファイルがあります。を開きconfig/database.php
ます。下にスクロールして、上図のようなMySQLブロックを見つけます。データベース名、ユーザー名、パスワードを、設定したものと一致するように変更します。次に、保存して終了します。Nginxを構成する
パズルの最後のピースはNginxです。それは実際にあなたのサイトを提供する部分です。に変更し/etc/nginx
ます。そのフォルダーには、Nginxのすべての構成が含まれています。あなたはそれをいじる必要はありません。nginx.conf
必要に応じてオプションを調整できますが、Laravelを動作させる必要はありません。注意が必要なフォルダが2つあります。彼らは
sites-availabe
とsites-enabled
です。sites-available
すべてのサイト構成が含まれています。サイトのサービスを開始するには、でサイト構成へのソフトリンクを作成しますsite-enabled
。現在、エントリは1つだけです。両方のフォルダから削除してください。次に、sites-available
プロジェクトに新しいエントリを作成します。テキストエディターで新しいサイト構成を開き、次のように設定します。
server {
listen 80;
listen [::]:80;
server_name your-site.com
root /var/www/yourProject;
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
}
すべてがサーバーに反映されたら、保存して終了します。これで、変更を有効にするためにNginxを再起動できます。$ sudo systemctl restart nginxNginxに指定したサーバー名を参照して、サイトを表示できます。