【问题标题】:How to point heroku hosting to angular app and index.html in subdirectory?如何将heroku托管指向子目录中的角度应用程序和index.html?
【发布时间】:2016-06-02 13:26:22
【问题描述】:

我是使用 heroku 部署的新手。在我的 heroku 存储库中,我有一个 nodejs + angular 应用程序,其中我的 app.js 和所有 angular 文件都在一个名为 app/ 的子目录中

我使用 grunt,我可以毫无问题地在本地运行我的网站,然后我转到 localhost:8000/app。当我推送到 heroku 时,它会通过我的 package.json 并运行适当的脚本来构建项目。我也已经做了

heroku ps:scale web=1

但是,当我尝试时

heroku open

页面说:

应用程序错误应用程序和您的页面发生错误 无法送达。请稍后再试。

我相信这是因为 heroku 没有指向app/index.html,所以没有要渲染的页面。有什么解决办法吗?

【问题讨论】:

标签: javascript angularjs node.js heroku


【解决方案1】:

您的网络服务器配置文件(app.js/webserver.js 或任何您命名的文件)是什么样的?

这是一个使用 Express 的示例:

var express = require('express');
var bodyParser = require('body-parser');
var cookieParser = require('cookie-parser');
var session = require('express-session');

var app = express();

var port = process.env.PORT || 8000;

var path = require('path');
var rootPath = path.normalize(__dirname + '/');
app.use(express.static(rootPath + '/app'));



app.listen(port, function (err) {
  console.log('running server on port ' + port);
});

如果以上配置正确,Heroku 应该可以轻松地在您的应用文件夹中找到您的 index.html。

【讨论】:

    猜你喜欢
    • 2021-02-26
    • 2013-10-04
    • 2018-08-15
    • 2020-03-25
    • 2012-11-22
    • 2018-12-16
    • 2013-10-18
    • 2015-01-30
    • 2021-10-09
    相关资源
    最近更新 更多