NODE JS记录

之前一直没有接触NODEJS,前几天运维把内网虚拟机关闭了,后台上传功能失效,WHAT

一看地址502,然后看nginx ERROR日志如下:

2018/04/08 09:02:11 [error] 13215#0: *69 connect() failed (111: Connection refused) while connecting to upstream, client: 10.200.16.111, server: upload1.vision.demo1.**.com, request: "GET /v1/upload_widget?return=http://cms.demo1.***.com/upload_callback&callback=uploadCallback HTTP/1.1", upstream: "http://127.0.0.1:4000/v1/upload_widget?return=http://cms.demo1.***.com/upload_callback&callback=uploadCallback", host: "upload1.vision.demo1.***.com"

明确提示了,上游连接不了

又试了一下:


本地都连接不上,明显端口没有监听啊

netstat -tunlp 

忘截图了,反正是果然没有没有应用监听


翻了一下代码,WHAT,里面是NODE JS代码

恩,百度了一下NODE JS的启动方法

原来是要启动进程,看了一下nodejs.sh里

如下:

#!/bin/bash

killall node
#nohup node /home/pp/web/storage/manager.js >>/tmp/node.log 2>&1 &

nohup node /home/pp/web/storage-1.3.4/manager.js >>/tmp/node.log 2>&1 &


manager.js代码如下:

var cluster = require('cluster');
var http = require('http');
var numCPUs = require('os').cpus().length;


if (cluster.isMaster) {
    // Fork workers.
    for (var i = 0; i < numCPUs; i++) {
        var worker = cluster.fork();
        console.log(worker.process.pid)
    }

    cluster.on('exit', function(worker, code, signal) {
        console.log('worker ' + worker.process.pid + ' died');
        process.nextTick(function () {
            cluster.fork();
        });
    });


} else {
    var app = require('./app.js');
    console.log('进程启动成功!');
}

app.js代码如下:

/**
 * Module dependencies.
 */


var express = require('express')
    , routes = require('./routes')
    , user = require('./routes/user')
    , uploads = require('./routes/uploads')
    , http = require('http')
    , object = require("./routes/object")
    , monitor = require("./routes/monitor")
    , path = require('path');


var app = express();


app.configure(function () {
    app.set('config', require('./config/default'));
});


app.configure('dev', function () {
    app.set('config', require('./config/dev'));
});
app.configure('test', function () {
    app.set('config', require('./config/test'));
});
app.configure('beta', function () {
    app.set('config', require('./config/beta'));
});

app.configure(function () {
    app.set('port', process.env.PORT || 4000);
    app.set('views', __dirname + '/views');
    app.set('view engine', 'jade');
    app.use(express.favicon());
    app.use(express.logger('dev'));
    app.use(express.bodyParser({hash: "sha1"}));
    app.use(express.methodOverride());
    app.use(express.cookieParser('your secret here'));
    app.use(require('./middleware/config')(app));
    app.use(express.session());
    app.use(app.router);
    app.use(express.static(path.join(__dirname, 'public')));
    app.use(require('./middleware/error')());
});


var connect = require('express/node_modules/connect')
    , mime = connect.mime;


app.configure('dev', function () {
    app.use(express.errorHandler());
});

app.get('/upload', uploads.start);
app.get("/index", routes.index);
app.get('/v1/upload_widget', uploads.start);
app.post("/v1/upload_widget",uploads.upload_widget);
app.get('/v1/upload_object', object.start);
app.post('/v1/upload_object', object.saveOBJ);

app.post("/v1/url", uploads.uploadURL);
app.post('/v:id/upload', uploads.apiUpload);
app.post('/v:id/uploadData', uploads.apiUploadData);
app.post('/v:id/objects', object.saveOBJ);
app.put('/v:id/objects', object.saveOBJ);
app.delete('/v:id/objects', object.deleteObj);


app.post('/v:id/url', uploads.uploadURL);
app.get('/v:id/*', function (req, res) {
    var msg = req.config("apiMessage");
    console.log(req.config("dev"));
    res.send(msg);
});


app.get("/monitor", monitor.check);
http.createServer(app).listen(app.get('port'), function () {
    console.log("Express server listening on port " + app.get('port'));

});

最终的解决方式是

  chmod a+x nodejs.sh #给nodejs.sh可执行权限

  执行 ./nodejs.sh

OVER,502结束!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值