Laravel - Getting Started - Configuration

Introduction

學習一個框架, Ray 的想法是, 在深入理解底層實作的原理之前, 應該先知道這個框架的 使用方法; 先學習怎麼使用這個前人造的輪子, 再學習怎麼樣一個輪子。
所以本篇文章重點在於細讀官方文件, 並將內容理解後以 Q&A 的方式記錄下來, 加速學習以及查詢。






Environment Configuration

  • 如果使用 Composer 安裝, 專案內會有 .env 檔案嗎? 會哦, 會自動被 cp 一份
  • 當執行 PHPUnit 時, 如何替換掉 .env? 建立 .env.testing


Environment Variable Types

  • 在 Laravel .env 檔中, 如果 value 是含有空白的字串, 該怎麼做?
    <?php
    APP_NAME="My Application"


Determining The Current Environment

  • Laravel 中, 如果我想要依據目前的環境 (production, develop) 來做相對應的事的話, 可以怎麼做?
    <?php
    if (App::environment('local')) {
    // The environment is local
    }

    if (App::environment(['local', 'staging'])) {
    // The environment is either local OR staging...
    }


Hiding Environment Variables From Debug Pages

  • 當 Laravel 的環境變數 APP_DEBUG 為 true 時, 默認會輸出所有的環境變數以及內容, 假如我有一些變數不想顯示, 我可以怎麼做?
    <?php
    // 修改 config/app.php 檔案中的 debug_blacklist
    return [

    // ...

    'debug_blacklist' => [
    '_ENV' => [
    'APP_KEY',
    'DB_PASSWORD',
    ],

    '_SERVER' => [
    'APP_KEY',
    'DB_PASSWORD',
    ],

    '_POST' => [
    'password',
    ],
    ],
    ];


Accessing Configuration Values

  • 在 Laravel 中, 若要取得 config 的值, 可以怎麼做?

    <?php
    $value = config('app.timezone');
  • 在 Laravel 中, 若要在程式碼中設定 config 的值, 可以怎麼做?

    <?php
    config(['app.timezone' => 'America/Chicago']);


Configuration Caching

  • php artisan config:cache 做了什麼事? 將所有的 config 檔案 cache 成一份檔案, 以加速運行
  • php artisan config:cache 建議在 production 還是 develop 運行? production
  • 運行 php artisan config:cache 時, 會否讀 .env 檔? 不會哦
  • 所有 Laravel 的設定檔都放在哪裡? config 資料夾底下


Maintenance Mode

  • 在 Laravel 中, 如果要啟動維護模式, 可以怎麼做?

    php artisan down
  • 在 Laravel 中, 如果要啟動維護模式, 並且客制 message 以及 retry 可以怎麼做?

    php artisan down --message="Upgrading Database" --retry=60
  • 在 Laravel 中, 以下的 –retry 代表什麼意思?

    php artisan down --message="Upgrading Database" --retry=60

    會設定一個 Retry-After HTTP header, 目前大概只有 Google Bot 會特別去偵測, 在你指定的 downtime 時間不會去爬你的網站

  • 在 Laravel 中, 如果在維護模式中, 我僅僅想對指定的 IP 開放, 我可以怎麼做?

    php artisan down --allow=127.0.0.1 --allow=192.168.0.0/16
  • 在 Laravel 維護模式中, queue job 還會被處理嗎?
    不會哦

<未完成>利用 Stackdriver APM 來增進網站可靠性以及排除錯誤 Laravel - Eloquent ORM - API Resources

留言

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×