2014-05-15 23 views
3

我試圖設置一個新的Symfony項目。當我執行「php console.php config:dump-reference」時,出現錯誤,說明「服務」uri_signer「依賴於不存在的參數」kernel.secret「。你的意思是:「kernel.charset」?Symfony:服務...依賴於不存在的參數kernel.secret

我已經驗證的祕密被設置在配置/ parameters.yml:

parameters: 
    secret: s3kr3t 

我已經驗證的是進口的參數配置/ config.yml:

imports: 
    - { resource: parameters.yml } 

如果我改變參數.yml到它的工作原理(但這是不正確的,根據網絡上的所有文檔):

parameters: 
    kernel.secret: s3kr3t 
+0

Sry,無法複製。你確定你正確安裝了SF2嗎? – nietonfir

+0

不,我不是。我已經使用作曲家拉入依賴關係。沒有任何安裝。我爲Symfony \ Bundle \ FrameworkBundle \ Console \ Application創建了我自己的AppKernel,它設置了配置。 –

+0

我能夠通過將「secret:s3kr3t」更改爲「kernel.secret:s3kr3t」來實現它,但我不確定它爲什麼沒有按預期工作。 –

回答

2

這意味着kernel.secret尚未設置,該值用於生成CSRF令牌,但也可用於其他內容。

確保kernel.secrect在parameters.yml已知和遵循config.yml導入:

imports: 
    - { resource: parameters.yml } 

parameters.yml:

parameters: 
    kernel.secret: ThisIsVerySecret! 

,或者它如何去完成標準編輯:

config.yml:

framework: 
    secret:   "%secret%" 

parameters.yml

parameters: 
    secret: ThisIsVerySecret! 
1

只好similiar問題已經忘了還添加它在parameters_dev.yml 因此,檢查其中的環境是你的工作,如果它被設置爲環境。

相關問題