我浏览过与此相关的其他几个问题,我还没有找到一个解决方案。当我通过他们的网站登录打开班次并尝试打开我的应用程序时,出现503服务不可用错误。当我ssh到我的应用程序,并尝试运行server.js我得到的错误:无法获得的node.js openshift应用程序运行,ERROR:听EACCESS
events.js:72 throw er; // Unhandled 'error' event ^ Error: listen EACCES at errnoException (net.js:905:11) at Server._listen2 (net.js:1024:19)
,它只是不断去像这样几行。
我server.js看起来是这样的:
var express = require('express'),
app = express(),
bodyParser = require('body-parser'),
mongoose = require('mongoose'),
meetupsController = require('./server/controllers/meetups-controller');
var http = require('http');
app.set('port', process.env.OPENSHIFT_NODEJS_PORT || 8080); //testing
app.set('ip', process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1'); //testing
//mongoose.connect('mongodb://localhost:27017/mean-demo'); //for local use
mongoose.connect('mongodb://user_name:[email protected]:port/mean-demo')
//note: mean-demo is name of the database not my appname.
//I have replaced mean-demo with my appname (testapp) and it still doesn't work
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())
app.get('/', function(req, res){
res.sendfile(__dirname + '/client/views/index.html');
});
app.use('/js', express.static(__dirname + '/client/js'));
http.createServer(app).listen(app.get('port'), app.get('ip'), function(){ //testing
console.log('Express server listening on port ' + app.get('port'));
});
//REST API
app.get('/api/meetups', meetupsController.list);
app.post('/api/meetups', meetupsController.create);
app.listen(8080, function(){ //was 3000
console.log('I\'m Listening...');
}) //i have commented these out and the problem still isn't fixed
我试图实现这种代码的各种变化,走动的东西,等等,并没有什么作品。我还评论了猫鼬/ mongodb电话,我仍然得到错误。顺便说一下,这在本地使用mongo DB的本地版本工作。我真的不知道如何解决这个问题,所以一些指导将非常感谢。就像我之前说过的,我已经搜索了各种各样的stackoverflow,很多人都有这个错误,但是似乎没有解决它们的问题已经修复了我的错误。让我知道你是否需要任何其他信息,我会很乐意提供。
编辑: 所以它现在的工作。我认为发生的事情是这样的:我知道EADDRINUSE错误是当你访问一个已经被使用的端口时。我认为发生的事情是我的应用程序启动并运行,所以当我试图运行它时,它试图运行两次,并抛出错误。我一直在openshift CLI上磨了这么久,我没有打扰在网络浏览器上检查我的应用程序,看它是否工作。多谢你们!
正如你可以从我的第一个电话听明白了,我做的端口和IP地址 – KPJ