Node.js 切近实战(十二) 之Linux部署
来源:互联网 发布:图像的预处理软件 编辑:程序博客网 时间:2024/05/08 10:58
之前的话我们的项目都是跑在windows上,今天我们要将我们的程序跑到linxu机器上。在看linux部署之前,我们先看一下类似于 mvc的过滤器或者叫拦截器。在中我们加入如下代码
var beforeRequest = function (req, res, next) { if ( == '/' || == '/login' || == '/config' || == '/user' || == '/logInout') { next(); } else if ( == null || == undefined || !) { ('/login'); } else { next(); }}(beforeRequest);
此时当有请求到达时,就会先判断用户是否登录,如果未登录,则跳转至登陆界面。但是要确保该代码在注册路由之前。
('/', routes);
OK,接下来我们在看一下平台上log4js的使用。
var log4js = require('log4js');var log4jsConfig = require('./framework/config/log4js_');();
ok,接下来我们看一下log4js的配置
= { appenders: [ { type: 'console', category: "console" }, { type: 'file', filename: 'logs/', maxLogSize: 1024, backups: 1, category: 'log_info' }, { type: "datefile", filename: "logs/error", alwaysIncludePattern: true, pattern: "-yyyy-MM-dd-", category: "log_error" }, { category: "log_trace", type: "datefile", alwaysIncludePattern: true, pattern: "-yyyy-MM-dd-", filename: "logs/trace" } ], replaceConsole: true, levels: { console: "ALL", log_error: "ALL", log_info: "ALL", log_trace: "ALL" }}
OK,经过这样的配置之后,我们看一下记录的log。
OK,其实在中我们对记录进行了设置。
var loggerInfo = ('log_info');var loggerError = ('log_error');var loggerTrace = ('log_trace');((loggerInfo, { format: ':method :url' }));
定义了三种log,error分别记录404和500。
(function (req, res, next) { (); var err = new Error('Not Found'); = 404; = "The resource you are look for is not found!"; next(err);});(function (err, req, res, next) { ( || 500); (); ('error', { message: , error: {} });});
而info用来记录,经过设置
replaceConsole: true
使得console的内容可以在窗口输出,而不是仅写入log文件。
[2016-08-01 14:17:] [INFO] log_info - GET /user/file pageIndex=0&pageSize=10&isShared=false&fileName=[2016-08-01 14:17:] [INFO] log_info - GET /page?q=s[2016-08-01 14:17:] [INFO] log_info - GET /docshare[2016-08-01 14:17:] [INFO] log_info - GET /user/sharedfile?userId=&pageIndex=0&pageSize=10&fileName=&startDate=&endDate=[2016-08-01 14:17:] [INFO] log_info - GET /page?q=u[2016-08-01 14:17:] [INFO] log_info - GET /page?q=r[2016-08-01 14:17:] [INFO] log_info - GET /file/auth[2016-08-01 14:17:] [INFO] log_info - GET /user/file?pageIndex=0&pageSize=10&isShared=true&startDate=Fri%20Jul%2001%202016%2000:00:00%20GMT+0800%20(й)&endDate=Mon%20Aug%2001%202016%2014:17:11%20GMT+0800%20(й)&fileName=[2016-08-01 14:17:] [INFO] log_info - GET /page?q=c
而且格式就是上面设置的http method+URL
((loggerInfo, { format: ':method :url' }));
OK,关于log4js就说这么多,毕竟只是个工具,大家自己下去看api就行了。
好了,接着我们将改程序部署至linux我的centos5。
有没有注意到我桌面的ftp服务器,没错就是我在win10搭建的ftp服务器。OK,我们将程序放到ftp,我们再拷贝至centos。
ok,我们把所有要用的东西都通过此方法拷贝至centos。
我们需要的是部署程序,mongodb, for linux。好的,完成后,我们先要启动mongodb
接着我们通过node命令启动程序。
启动成功,我们在window上访问一下
有的人说了,你这个图我怎么知道是不是linux的ip。我现在就给你看两张图,一个是ip,
一个是centos的火狐浏览器。
我们再看一下linux下火狐的浏览效果
这个浏览器估计有些老,不支持html5。OK最后我们登录进去看系统是否正常。
木有什么问题,ok,今天就到这里。后面会多多的玩linux,什么.net core什么玩意的我们也玩玩。
- Node.js 切近实战(十二) 之Linux部署
- Node.js 切近实战(十一) 之实时通讯
- Node.js 切近实战(二) 之图书管理系统(登录)
- Node.js 切近实战(十一) 之实时通讯
- Node.js 切近实战(九) 之Excel在线(在线编辑)
- Node.js 切近实战(三) 之图书管理系统(图书信息录入)
- Node.js 切近实战(五) 之图书管理系统(图书Gallery)
- Node.js 切近实战(四) 之图书管理系统(图书查询)
- Node.js 切近实战(六) 之Excel在线(文件列表)
- Node.js 切近实战(八) 之Excel在线(文件权限)
- Node.js 切近实战(九) 之Excel在线(在线编辑)
- Node.js 切近实战(十) 之Excel在线(共享文件)
- Android切近实战(十)
- AD 实战之十二:站点部署与管理
- 《Node.js开发加密货币》之二十二:自序
- Linux使用node.js部署react.js到腾讯云
- node.js实战 要点
- node.js实战 要点
- PPTP不再好用
- Leetcode 77. Combinations
- 阿里云oss服务器上传静态文件,图片
- 服务器定时器
- 【51单片机】简单四则运算
- Node.js 切近实战(十二) 之Linux部署
- 主流的NOSQL数据库对比
- java Nio 异步操作(三)
- 封装自己的js库(二)---仿照JQuery
- JAVA byte数组转化为16进制字符串输出
- CentOS 6.6 如何启用中文输入法
- PAT 乙级 1035. 插入与归并(25)
- 浅谈淘宝分布式存储FastDFS_v5.05的环境搭建和nginx集
- Python取周的相关信息的几个函数