やること
ubuntu環境にLaravelプロジェクトを立てるまで。
初めてLaravelを触るので、間違いやより良い方法があったら教えてください。
前提となるバージョン情報
ubuntu 18.04
php 7.2.15
mysql 5.7
apache 2.4
Laravel 5.8
手順
Laravelに必要な要件を揃える
こちらのサイトにあるように以下の要件を満たしていないとLaravelは正常に動かない。
今回はLaravel5.8を使うので、以下の要件を満たす必要がある。
PHP >= 7.1.3
OpenSSL PHP Extension
PDO PHP Extension
Mbstring PHP Extension
Tokenizer PHP Extension
XML PHP Extension
Ctype PHP Extension
JSON PHP Extension
BCMath PHP Extension
確認のためには以下のコマンドを叩いて確認する
$ php -v
PHP 7.2.15-0ubuntu0.18.04.2 (cli) (built: Mar 22 2019 17:05:14) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.15-0ubuntu0.18.04.2, Copyright (c) 1999-2018, by Zend Technologies
$ php -m | grep -e openssl -e PDO -e mbstring -e tokenizer -e ^xml$ -e ctype -e json -e bcmath
bcmath
ctype
json
mbstring
openssl
PDO
tokenizer
xml
引用 PHPフレームワークLaravelのインストール入門編
composerをインストールする
以下のコマンドを叩けば完了する。
curl -sS https://getcomposer.org/installer -o composer-setup.php
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
composer
rm composer-setup.php
引用 Ubuntu 18.04にComposerをインストールする
composerコマンドを叩いて以下のように表記されればおk
$ composer
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 1.8.4 2019-02-11 10:52:10
apacheの設定をする
Laravelではフロントコントローラ設定をする必要があるが、少なくともLaravel5.8においてはフレームワークに含まれている.htaccessファイルが勝手に設定してくれる。しかし、そのままだとエラーになる場合があるため一応確認。
DocumentRootの変更
初期設定だとDocumentRootは/var/www/htmlになっているが、Laravelでプロジェクトを立てるとその通りにはならないため、そこに合わせて設定を変更する。
# DocumentRoot /var/www/html ←元の記述はコメントアウトか削除してください
DocumentRoot /var/www/html/myproject/public
rewrite_moduleの有効化
index.phpへのrewriteを動かすために以下のコマンドでrewriteモジュールを有効化させる必要がある。
$ a2enmod rewrite
Enabling module rewrite.
To activate the new configuration, you need to run:
service apache2 restart
.htaccessの許可
もし上記だけでうまくいかなかった場合、.htaccessファイルによる書き換えが許可されていない可能性がある。その場合、以下の記述を/etc/apache2/apache2.confあたりに入れると許可される。
<Directory /var/www/html/>
AllowOverride All
Require all granted
</Directory>
Laravelのインストール
Laravelコマンドとcomposerコマンドの2つのやり方があるらしいが、自分はcomposerコマンドでやった。
my_projectのところに任意のプロジェクト名を入れる。
インストールには時間がかかるので3〜5分程度待ちましょう。
$ cd /var/www/html
$ composer create-project laravel/laravel --prefer-dist my_project 5.8
正常にインストールが完了すると以下の記述が表示されます。
Application key set successfully.
画面で確認
あとは画面で表示されるかを確認してください。
ローカル環境の場合はデフォルトでlocalhostとなっているので、ブラウザのアドレスバーに入力すれば画面が見れます。