У меня очень простое прямое приложение node.js [1] Я хочу развернуть на heroku. Хотя я могу развернуть его, доступ к странице невозможен в браузере.Развернуть приложение node.js на heroku успешно, но не работает
Я следовал советам руководства «Приступая к работе с Node.js на Heroku» [2]. Когда я запускаю приложение с использованием node index.js
локально, я могу получить доступ к приложению по адресу http://localhost:8080/index.jade
, однако, когда я пытаюсь получить к нему доступ по адресу heroku по адресу http://immonow.herokuapp.com:8080/index.jade
, он бы выбросил мне код ошибки HTTP ERR_CONNECTION_REFUSED
.
Как развернуть мое приложение:
git commit -am "made changes"
// фиксирует изменениямgit push origin master
// нажать мерзавецheroku create
// создать Heroku приложениеgit push heroku master
// толчок Herokuheroku ps:scale web=1
// начало работы
Мой node.js сервер:
#!/usr/bin/env node
var http = require('http')
, jade = require('jade')
, static = require('node-static')
, jadeRe = /\.jade$/
, path = process.argv.slice(2)[0]
, fileServer = new static.Server(path || '.')
http.createServer(function (req, res) {
if (req.url.match(jadeRe)) {
res.writeHead(200, {'Content-Type': 'text/html'})
res.end(jade.renderFile('.' + req.url, {
filename: '.' + req.url.replace(jadeRe, '')
}))
} else {
req.addListener('end', function() {
fileServer.serve(req, res)
}).resume()
}
}).listen(8080)
Любая помощь будет оценена.
[1] https://github.com/takahser/immonow
[2] https://devcenter.heroku.com/articles/getting-started-with-nodejs#introduction
Из командной строки, в которой вы работаете с Heroku проверить, если 'Heroku работает open'. Таким образом, вы можете быть уверены, что ваше приложение живет там, где вы думаете. (Кажется странным, что вам нужно указать порт 8080 для экземпляра производства?) – lostphilosopher
'heroku open' открывает https://immonow.herokuapp.com, однако я попытался изменить порт на 80, но тогда он не будет даже работать локально – Ronin
Рад, что вы получили его! – lostphilosopher