人気のPHPフレームワーク「Laravel」を導入してみた(初期設定編)

かなり長い間、PHPを使ったシステム開発ではオレオレフレームワークを使用していて、負の連鎖を止めれなかったのですが、自社サービスのリプレースを機に人気のフレームワーク「Laravel(ララベル)」を導入して1年以上経過しました。経験的にはまだまだですが、今後はオレオレを使う事もありませんので、導入までの基本を覚書として記したいと思います。




1.composerのインストール

https://getcomposer.org/download/
急に出て来た「composer(コンポーザー)」ですが、こちらはPHP関連のパッケージ管理・依存管理をしてくれるツールで、composerを使ってLaravelをインストールするため、まずはcomposerからインストールします。Linux系はもちろん、Windows・Macにもそれぞれ対応してますので安心ですね。

# curl -sS https://getcomposer.org/installer | php

2.Laravelのインストール

上でインストールしたcomposerを使ってlaravelをインストールします。指定したプロジェクト名がディレクトリ名となって作成されますので、階層に注意してコマンドを実行してください。

# composer create-project laravel/laravel --prefer-dist プロジェクト名

またlaravelのバージョンを指定したい場合は以下のように設定してください(以下の例ではバージョン5.5系、プロジェクト名はsample_project)。

# composer create-project "laravel/laravel=5.5.*" sampleproject

3.環境構築

●パーミッション変更
# chmod -R 777 storage
# chmod -R 777 bootstrap/cache
●composerの更新

laravel自体もcomposerでインストールしましたが、laravelプロジェクトで利用している各種パッケージも、composer.jsonに従ってcomposerでインストールします。プロジェクト内に「vendor」ディレクトリが作成されますので、存在しない場合はまずこちらのコマンドを実行してください。

# composer update
●APP_KEYの設定(APP_KEYがない場合)

laravelをcomposerでインストールすると自動的に実行されるはずですが、もしプロジェクト内の環境設定ファイル「.env」に「APP_KEY」が設定されていない場合は以下コマンドでキーが設定されます。

# php artisan key:generate
●.env(環境設定ファイル)の設定

laravel以外でも利用される一般的な手法ですが、本番環境・開発環境と設定を切り替えるため、環境変数を.envファイルに記述します。設定は幾つかのブロックに分かれていますが、例えばDBと連携するシステムを構築する場合はDBのブロックに対して以下のように設定します。

DB_HOST=DBのホスト名
DB_DATABASE=DB名
DB_USERNAME=ユーザー名
DB_PASSWORD=パスワード

それ以外にもメールの設定や外部サービスとの連携用のAPIキーやURLなどもここに記載して切り替える運用が良いと思います。

●言語と時刻設定

日本語環境向けに以下設定を変更します。

'timezone' => 'Asia/Tokyo',
'locale' => 'ja',

これで大まかな初期設定は完了しました。次回気が向いたらLaravelのフレームワークとしての基本機能である「マイグレーション」「Eloquentモデル」「シーディング」辺りについて解説したいと思います。