基礎介紹
Laravel 框架的所有配置文件都放置在 config
目錄下
環境配置
.env
文件作為 Laravel 的全局環境配置文件,位于根目錄下
Laravel 使用
Vance Lucas
的 DotEnv PHP 函數庫來實現項目內環境變量的控制
新建一個.env.testing
文件。在運行 PHPUnit 測試或者帶有--env=testing
選項運行Artisan
命令的時候,這個
.env.testing
文件會覆蓋掉.env
文件對應的值
配置參數
//應用名稱
APP_NAME=Laravel
// 運行環境名稱
APP_ENV=local
// 調試模式,開發階段啟用,上線狀態禁用。
APP_DEBUG=true
// 敏感信息加密密鑰,可使用 php artisan key:generate 重新生成。
APP_KEY=
// 設置等級日志,默認所有等級
APP_LOG_LEVEL=debug
// 項目根目錄
APP_URL=http://localhost
//廣播驅動設置
BROADCAST_DRIVER=log
// 緩存驅動,默認使用文件作為緩存。
CACHE_DRIVER=file
// 回話驅動,默認使用文件存儲SESSION。
SESSION_DRIVER=file
// 隊列驅動,默認使用同步模式。
QUEUE_DRIVER=sync
// Redis高性能key-value數據庫,使用內存存儲,用于數據持久化。
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
// 數據庫配置項
DB_HOST=127.0.0.1//數據庫主機名
DB_PORT=3306//數據庫端口
DB_DATABASE=homestead//數據庫名稱
DB_USERNAME=homestead//數據庫登錄賬戶
DB_PASSWORD=secret//數據庫登錄密碼
//郵件配置
MAIL_DRIVER=smtp //郵件發送驅動
MAIL_HOST=smtp.mailtrap.io //郵箱所在主機
MAIL_PORT=2525 //郵箱發送服務端口號
MAIL_USERNAME=null //郵箱賬號
MAIL_PASSWORD=null //郵箱密碼
MAIL_ENCRYPTION=null //加密類型
//配置事件廣播
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
獲取環境變量
通過函數 env()
獲取
'debug' => env('APP_DEBUG', false),
.env
文件可看作對 /config/
目錄下的通用配置做的提取
數據庫前綴設置
在.env
文件中新增 DB_PREFIX
配置, 并在/config/database.php
修改 prefix
選項為 env(DB_PREFIX,'')
。
判斷目前使用的環境
應用程序的當前環境由 .env
文件中的 APP_ENV
變量所決定
獲取
$environment = App::environment();
判斷
if (App::environment('local')) {
// 當前正處于本地開發環境
}
if (App::environment('local', 'staging')) {
// 當前環境處于 `local` 或者 `staging`
}
獲取設置值
通過函數 config()
獲取配置
使用config()
可獲取/config/
目錄下項目的配置項信息。
config('database.connections.mysql.prefix')
$value = config('app.timezone');
修改設置值
config(['app.timezone' => 'America/Chicago']);
配置緩存信息
使用以下 Artisan
自帶命令,把 config
文件夾里所有配置信息合并到一個文件里,減少運行時文件的載入數量:
php artisan config:cache
上面命令會生成文件 bootstrap/cache/config.php
,可以使用以下命令來取消配置信息緩存:
php artisan config:clear
注意:此命令不應該在開發時運行。 因為設置選項會在開發時經常變動。
維護模式
維護模式應用
當應用程序處于維護模式時,所有傳遞至應用程序的請求都會顯示出一個自定義視圖。用于更新應用或進行性能維護,可以輕松 關閉 整個應用程序。如果應用程序處于維護模式 則會拋出 503 的狀態碼。
啟用維護模式
php artisan down
可以指定 down
命令的 message
和 retry
選項。 message
自定義顯示給用戶的信息, retry
作為 Retry-After
HTTP 標頭返回:
php artisan down --message='Upgrading Database' --retry=60
關閉維護模式
php artisan up
維護模式的響應模板
維護模式的默認模板放在 resources/views/errors/503.blade.php
。你可以根據你的需求來修改這個模版
維護模式與隊列
當應用程序處于維護模式中時,將不會處理任何 隊列工作。所有的隊列工作將會在應用程序離開維護模式后被繼續運行。
維護模式的替代方案
維護模式有幾秒鐘的服務器不可用時間,如果你想做到平滑遷移的話,推薦使用 Envoyer 服務。