Laravel - 設定
ナビゲーションに移動
検索に移動
概要
ディレクトリ構造
新しいLaravelプロジェクトを作成する。
composer create-project laravel/laravel <プロジェクト名>
- app
- アプリケーションのコアコードを配置する。
- Http/Controllers
- コントローラクラス
- Models
- Eloquentモデル
- Providers
- サービスプロバイダ
- config
- 設定ファイルを格納する。
- app.php
- アプリケーションの基本設定
- database.php
- データベース接続設定
- auth.php
- 認証設定
- database
- migrations
- データベースマイグレーションファイル
- seeders
- データベースシーダ
- factories
- モデルファクトリ
- migrations
- routes
- web.php
- Web用ルート定義
- api.php
- API用ルート定義
- web.php
- resources
- views
- Bladeテンプレート
- css
- CSSファイル
- js
- JavaScriptファイル
- views
- public
- 公開ディレクトリ
- index.php
- エントリーポイント
- アセットファイル
- 画像、CSS、JS等
- storage
- app
- アプリケーションが生成するファイル
- logs
- ログファイル
- framework
- フレームワークが生成する一時ファイル
- app
.env
.envファイルの配置
Laravelのプロジェクトディレクトリ直下にenvディレクトリを作成する。
cd <Laravelのプロジェクトディレクトリ> mkdir env
次に、以下に示すような本番向け、開発向け等に名前を分けてディレクトリを作成する。
cd env mkdir dev \ # 開発向け staging \ # 評価・試験向け prod # 本番向け
この時、プロジェクトディレクトリ直下に存在する.envファイルを、各ディレクトリにコピーする。
また、プロジェクトディレクトリ直下にある既存の.envファイルは削除すること。
.envファイルの切り替え
.envファイルの読み込みは、Laravelのプロジェクトディレクトリ直下にあるbootstrap/app.phpファイルで指定する。
サーバ情報からホスト名を取得して切り替える。
// bootstrap/app.phpファイル
// 追記
switch ($_SERVER['HTTP_HOST'] ?? 'localhost') {
case 'localhost': // 開発向け
$app->loadEnvironmentFrom('env/dev');
break;
case 'staging.maydomain.com': // 評価・試験向け
$app->loadEnvironmentFrom('env/staging');
break;
case 'prod.maydomain.com': // 本番向け
$app->loadEnvironmentFrom('env/prod');
break;
}
キャッシュの更新
キャッシュを更新 (configのキャッシュ再生成) して、各環境で正常に画面が表示されることを確認する。
php artisan config:cache
.envファイルの設定
APP_NAME=<アプリケーション名> APP_ENV=local APP_KEY=<自動生成される> APP_DEBUG=<true または false 開発向けはdebugを指定する> APP_URL=<WebサイトのURL 例: http://localhost> DB_CONNECTION=<データベース 例: mysql> DB_HOST=<データベースのホスト名 127.0.0.1> DB_PORT=<データベースに接続するポート番号 例: 3306> DB_DATABASE=<データベース名> DB_USERNAME=<データベースのユーザ名> DB_PASSWORD=<データベースのパスワード>