2015-08-08 63 views
3

Bolt documentation提到了爲每個環境設置配置文件,但沒有解釋如何實現它。設置每個環境的螺栓配置

當你有同一個站點的多個環境,比如開發,分段或生產時,你會希望配置的一部分是相同的,並且每個環境有一些不同。你可能會有不同的數據庫信息和調試設置。這可以通過分割config.yml文件來完成。將所有共享的設置放在默認config.yml中的所有環境中,如果需要,可以在版本控制系統中提交。每個環境中不同的設置,或者你不想在版本控制中使用的設置(如數據庫信息),都放在config_local.yml中。首先加載config.yml,然後加載config_local.yml,這樣config_local.yml可以覆蓋config.yml中的任何設置。

當然我沒有問題創建一個額外的配置文件,但我該如何告訴Bolt它運行在哪個環境以及它應該加載哪個文件?

回答

3

結果螺栓完全不知道它的環境。它總是加載config.yml後跟config_local.yml,不管域名。

從config.php文件,開始行226:

protected function parseGeneral() 
{ 
    // Read the config and merge it. (note: We use temp variables to prevent 
    // "Only variables should be passed by reference") 
    $tempconfig = $this->parseConfigYaml('config.yml'); 
    $tempconfiglocal = $this->parseConfigYaml('config_local.yml'); 
    $general = Arr::mergeRecursiveDistinct($tempconfig, $tempconfiglocal); 

解決我的問題是絕不允許得到部署config_local.yml。

2

config_local.yml文件旨在用於開發用途,以便您可以覆蓋可能在生產使用中提交給VCS的配置設置。