我在heroku中有一個angular2應用程序,並且我遇到了路由器的問題。在本地主機中,一切都像魅力,但是當我部署到heroku並嘗試訪問任何不是索引的路由時,我得到了404錯誤,如果我去索引,然後導航低谷頁面路由正常發生,除非我重新加載頁面,然後我得到另一個404,這是我的package.json片使用的英雄 "heroku-prebuild": "npm install http-server -g", "heroku-postbuild": "ng build --target=production --environment=prod && rsync -a dist/* .", "start": "http-server dist/",
我需要設置任何明確重寫將用於我的Procfile?heroku中的Angular2路由
4
A
回答
0
這似乎是從服務器的問題,角知道路由,但你的服務器不知道所有這些路徑。簡單的解決方案是將所有路徑重定向到主index.html。與此類似,
app.get('*', function (req, res) {
res.sendfile('./dist/index.html'); // load our index.html file
});
這不會給任何404錯誤,所有的路徑將被重定向到即index.html,然後角路由主路徑將運行相同的,因爲它是在你的本地主機。
+0
我還是遇到了這個問題,我已經申請了,而且它只刷新頁面而不是顯示內部錯誤的根目錄 – MurWade
相關問題
- 1. 在Heroku上使用Angular2路由器
- 2. Angular2路由,路由參數
- 3. angular2中的路由javascript
- 4. Angular2中的路由變量
- 5. Angular2路由器
- 6. Angular2兒童路由
- 7. Angular2路由事件
- 8. Angular2命名路由
- 9. Angular2輔助路由
- 10. Angular2:路由器和輔助路由
- 11. Angular2路由使用(2.0.0-rc.5)路由
- 12. Angular2路由器和一個路由
- 13. Heroku和Angular路由
- 14. Angular2路由器恨我的AUX路線
- 15. Angular2路由:堅持路由選項卡和子路由
- 16. Angular2 - 釋放候選路由器不路由到子路由
- 17. Angular2中的無限嵌套路由
- 18. IE9中的Angular2沒有路由?
- 19. UI路由器與Angular2中的NgRoute
- 20. Angular2中的路由 - GET 404(未找到)
- 21. 對於子路由,在angular2中的redirectTo
- 22. Angular2中的動態路由解析
- 23. Heroku中的端口路由將所有http路由到https
- 24. Angular2組織路由模塊
- 25. Angular2衛士和路由器
- 26. Angular2路由器和OnInit
- 27. Angular2路由器則應用
- 28. angular2路由不起作用
- 29. 卡在angular2(RC1)路由
- 30. Angular2路由重定向routeParams
只是一個建議 - 在https://m.alphasights.com/using-using-nginx-on-heroku-to-serve-single-page-apps-and-avoid-cors-5d013b171a45#.1yk8sb720上搜索HTML5路由 –
您還可以將'{provide:LocationStrategy,useClass:HashLocationStrategy}'添加到'AppModule'的提供程序中。另見http://stackoverflow.com/questions/36861628/location-and-hashlocationstrategy-stopped-working-in-beta-16 –
@GünterZöchbauer如果沒有'HashLocationStrategy',唯一的方法就是使用NGINX? –