Laravel - 設定

提供:MochiuWiki - SUSE, Electronic Circuit, PCB
2024年11月3日 (日) 09:10時点におけるWiki (トーク | 投稿記録)による版 (ページの作成:「== 概要 == <br><br> == ディレクトリ構造 == 新しいLaravelプロジェクトを作成する。<br> composer create-project laravel/laravel <プロジェクト名> <br> * app *: アプリケーションのコアコードを配置する。 ** Http/Controllers **: コントローラクラス ** Models **: Eloquentモデル ** Providers **: サービスプロバイダ * config *: 設定ファイルを格納する。 ** app.php **: アプリケーション…」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

概要



ディレクトリ構造

新しいLaravelプロジェクトを作成する。

composer create-project laravel/laravel <プロジェクト名>


  • app
    アプリケーションのコアコードを配置する。
    • Http/Controllers
      コントローラクラス
    • Models
      Eloquentモデル
    • Providers
      サービスプロバイダ
  • config
    設定ファイルを格納する。
    • app.php
      アプリケーションの基本設定
    • database.php
      データベース接続設定
    • auth.php
      認証設定
  • database
    • migrations
      データベースマイグレーションファイル
    • seeders
      データベースシーダ
    • factories
      モデルファクトリ
  • routes
    • web.php
      Web用ルート定義
    • api.php
      API用ルート定義
  • resources
    • views
      Bladeテンプレート
    • css
      CSSファイル
    • js
      JavaScriptファイル
  • public
    公開ディレクトリ
    • index.php
      エントリーポイント
    • アセットファイル
      画像、CSS、JS等
  • storage
    • app
      アプリケーションが生成するファイル
    • logs
      ログファイル
    • framework
      フレームワークが生成する一時ファイル



.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=<データベースのパスワード>