2016-09-18 137 views
1

無法在Heroku上安裝Yii2。在Heroku上安裝Yii2失敗。

我想在Heroku上安裝Yii2-basic-application模板。 但我面臨依賴/作曲家的問題。

該應用程序在本地機器上運行完美,但部署到heroku時,它拋出 ReflectionClass錯誤(未找到Class yii \ debug \ Module)。這個例外是關於y ii2-debug模塊。 我對作曲家的內部運作一無所知。 我已經運行composer update,composer dump-autoload但沒有幫助。 這些文件實際上存在於服務器上,這讓我認爲這可能是關於作曲家相關文件中的類映射的問題。另外,其中一個原因可能是yii2用於依賴管理的插件被破壞,稱爲composer-asset-plugin, Github上的Yii2回購也報告了這個插件()的問題。

我也希望備用的解決方法,因爲它是至關重要的。

回答

0

您的Heroku應用正在生產中運行。確認已設置YII_ENV

heroku config:set YII_ENV=prod 

您的yii2調試可能只在開發中。所以它不會安裝在生產中。

composer.json
"require-dev": { 
    "yiisoft/yii2-debug": "*", 

如果您運行的部署過程中控制檯命令,那麼你必須確保你不會自動加載或引導的debug模塊。

console.php
'bootstrap' => YII_ENV == 'dev' ? ['log', 'gii'] : ['log'], 
'modules' => YII_ENV == 'dev' ? [ 
    'gii' => 'yii\gii\Module' 
] : [], 

另見Can someone explain how Yii minimizing assets is supposed to work on Heroku?

如果這沒有幫助,您可以包括部署在控制檯輸出?