2016-06-14 109 views
0

我有一個獨立運行的應用程序應用程序,我可以運行服務器並看到它。然後我運行了ember build,並在瀏覽器中打開了/dist/index.html。我無法在/ dist/assets文件夾中加載任何css或js,而是在查看我的根文件系統。我打開了index.html並註釋掉了<base href='/'>。這樣做後,我能夠加載CSS和JS。但是,我遇到了一個安全問題。我在做這個構建過程中做了什麼錯誤,我是否應該註釋掉<base href='/'>Ember Build不工作?

的安全問題我是Uncaught SecurityError: Failed to execute 'replaceState' on 'History': A history state object with URL

回答

1

如果你在瀏覽器中直接向其file://...打開一個現代SPA的開始HTML,它幾乎不會工作。瀏覽器將從本地文件系統打開的文件視爲不同於服務器發送的html。

所以你應該做的是始終使用網絡服務器將您的文件部署到您的瀏覽器。在典型的應用程序應用程序中,您還應該將應用程序部署到根文件夾,並且如果沒有其他文件匹配請求的路徑,則配置您的網絡服務器始終發送index.html,以便該路由器可以開始執行自己的路由。

這幾乎可以在之間完成,每 webserver,就像apache,nginx,IIS等一樣。但如何在特殊的網絡服務器上做到這一點,不是關於燼而是關於該Web服務器的問題。