Създадох много просто приложение hapi.js със следния код.
var Hapi = require('hapi');
var server = new Hapi.Server(3000);
server.route({
method: 'GET',
path: '/',
handler: function (request, reply) {
reply('Hello, world!');
}
});
server.start(function () {
console.log('Server running at:', server.info.uri);
});
Въпреки това продължавам да получавам грешка „502 Bad Gateway“ при внедряване. Използвам стандартен метод за компресиране и качване за внедряване. Zip файлът съдържа файл service.js с горния код и файл package.json, както е показано по-долу.
{
"name": "hapi_aws_testing",
"version": "0.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"hapi": "^6.4.0"
},
"engines" : {
"node": "0.10.26"
}
}
Опитах се да внедря с премахнат раздел за node.js двигатели и също го зададох на 0.10.29 и след това разбрах, че версията на node.js, налична в Beanstalk на 1.0.4 AMI изображения, беше 0.10.26, така че я промених ето тази версия. Пробвах го локално и всичко върви добре.
В регистъра на грешките имам следните два журнала, които показват изпълнявания код...
-------------------------------------
/var/log/nodejs/nodejs.log
-------------------------------------
Server running at: http://ip-172-31-3-9:3000
и след това грешките, когато се опитам да достигна сървъра с браузър.
-------------------------------------
/var/log/nginx/error.log
-------------------------------------
2014/08/12 02:07:24 [error] 3457#0: *4 connect() failed (111: Connection refused) while connecting to upstream, client: 172.31.13.177, server: , request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:8081/", host: "consociation-test.elasticbeanstalk.com"
2014/08/12 02:07:26 [error] 3457#0: *4 connect() failed (111: Connection refused) while connecting to upstream, client: 172.31.13.177, server: , request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:8081/", host: "consociation-test.elasticbeanstalk.com"