2016-10-24 47 views
0

肆意部署,我需要將該應用程序放在服務器的根URL之外。基於this答案我需要做的就是將environment.js文件更改爲這樣。燼構建沒有設置正確的rootUrl

module.exports = function(environment) { 
    var ENV = { 
     modulePrefix: 'ember-drupal', 
     environment: environment, 
     rootURL: '/', 
     locationType: 'auto' 
    }; 

    if (environment === 'production') { 
     ENV.rootUrl = '/myApp/'; 
     ENV.locationType = 'hash'; 
    } 
    return ENV; 
}; 

所以,當我運行

ember build --environment=production 

我希望它來設置使用rootUrl爲/對myApp /,但是當我加載了本地主機/對myApp /它給了我404說,它仍然在尋找/ assets /而不是/ myApp/assets。

兩個有趣的筆記。

  1. 如果我將默認的rootUrl更改爲/ myApp /,它將起作用。
  2. 源代碼有一個名爲「ember-drupal/config/environment」的元標記。元標記的內容是我的環境變量的json。

的 '餘燼構建' 命令吐出了這一點:

{ 
"modulePrefix":"ember-drupal", 
"environment":"development", 
"rootURL":"/", 
"locationType":"auto", 
"exportApplicationGlobal":true 
} 

和 '餘燼構建--environment =生產' 吐出這樣的:

{ 
"modulePrefix":"ember-drupal", 
"environment":"production", 
"rootURL":"/", 
"locationType":"hash", 
"rootUrl":"/myApp/", 
"exportApplicationGlobal":false 
} 

因此它設置的locationType正確,但設置rootUrl兩次。

回答

0

一個驚人的大寫錯誤..... rootUrl vs rootURL。我花了我所有的方式來找到它。