首页 文章

Heroku和Angular路由

提问于
浏览
3

我正在开发一个使用Yoeman Angular包构建的Angular前端站点 . 该项目使用Node.js构建包在Heroku中托管 .

Heroku构建项目没有错误,它运行Gulp和Bower来安装依赖项 . 在执行启动脚本并编译项目之后,索引页面加载没有问题,但是任何其他不是主页的页面(例如登录页面)将落入“无法获取/登录”消息中 .

这似乎是一个常见的问题,因为我已经阅读了许多关于如何解决Heroku上的Angular路由的帖子 . 这些都是我目前没有取得任何成功的所有行动:

  • 在Express中创建一个Node.js Web服务器(我尝试了很多这种脚本)

var gzippo = require('gzippo'); var express = require('express'); var morgan = require('morgan'); var app = express();

app.use(摩根( 'dev的')); app.use(gzippo.staticGzip(“”__ dirname“/ dist”)); app.use('/ bower_components',express.static(__ dirname'/ bower_components')); app.listen(process.env.PORT || 5000);

  • 在.gitignore中注释dist文件夹,让Heroku使用它 . dist文件夹进入Git .

  • 创建env变量NODE_ENV:true,NODE_PATH:true,NPM_CONFIG_PRODUCTION:false

当在Apache服务器上运行dist文件或使用上面的Node.js脚本运行dist文件时,该站点可以在本地运行 .

我将不胜感激任何有助于我解决Heroku和Angular问题的评论 . 提前致谢 .

1 回答

  • 1

    我想,经过这段时间你已经能够解决这个问题(或者你继续做其他的事情) .

    在任何情况下,对于遇到类似问题的任何人,我使用Angular2 Express应用程序创建了一个公共仓库,该应用程序已经配置为在Heroku上进行部署 .

    https://github.com/pabloruiz55/Angular-Express-Heroku

    我无法完全回答这个问题,因为我错过了您正在遇到的错误信息,但希望看看我的启动项目,任何人都可以解决这个问题 .

相关问题