rrestjs
Version:
HIgh performance node.js ROA & RESTFUL web framework.
84 lines • 6.37 kB
JavaScript
var path = require('path'),
processPath = path.dirname(process.argv[1]);//运行node的目录,这里可以方便替换下面baseDir的__dirname,方便用户自己搭建目录,利用node_modules加载rrestjs
module.exports = {
//通用配置
/*
* 注意,所有的路径配置的前面请加‘/’而后面不要加'/'!
*/
server:001,
poweredBy: 002,
listenPort:'3000',//监听端口,如果配合clusterplus监听多个端口,这里也可以使用[3000, 3001, 3002, 3003]数组形式,rrestjs会智能分析
baseDir:'usr', //绝对目录地址,下面的目录配置都是根据这个目录的相对地址,这里是根据config文件进行配置地址
//baseDir:processPath,//这里是根据启动nodejs的命令目录来设置baseDir
autoCreateFolders:'false',//如果想要以node_modules加载rrestjs,则此项最好选择true,rrestjs会根据config自动创建静态文件目录和缓存目录等目录
favicon:'favicon.ico', //favicon存放地址
charset: 'gb2312',
autoStatic:'static', //自动响应静态文件的uri,比如 http://rrestjs.com/static/rrest.jpg 将会自动响应给客户端,为了加速这里只能设置一级目录
staticFolder:001, //自动响应静态文件的根目录,比如 http://rrestjs.com/static/rrest.jpg 将返回 baseDir+'/example/static/rrest.jpg'
staticParse:'',//是否开启静态文件压缩整合功能
staticParseName:false,//压缩整合功能的名称,例如用户可以'/static/?parse=/index.body.css|/index.user.css|/user.face.css'压缩整合成一个css响应给客户端
staticParseCacheTime:'1000*60*60',//压缩整合缓存时间,1小时
staticParseCacheFolder:'/tmp/static/',//缓存整合功能的缓存文件夹
staticParseMaxNumber:'10',//整合压缩css或js文件的最大上限,建议不要超过15
uploadFolder:'tmp', //文件上传的临时目录
postLimit:'1024*1024*100',//限制上传的postbody大小,单位byte
autoRouter:'router',//自动路由,如果为false则表示关闭,如果为'/controller',则表示默认去controller里寻找文件及方法,例如用户访问/user/face ,去回去controller文件下找到user.js执行face的方法传入req,res对象
//cluster配置
isCluster:'', //是否开启多进程集群
isClusterAdmin:'',//进程监听管理功能是否开启
CLusterLog:'false',//是否打开cluster自带的控制台信息,生产环境建议关闭
adminListenPort:'20910',//管理员监听端口号
adminAuthorIp:'',//允许访问管理的IP地址
ClusterNum:'', //开启的进程数
ClusterReload:'example',//只有当进程数为1时,进入开发模式,可以监听此文件夹下的改动,包括子文件夹,不用重复 ctrl+c 和 上键+enter
//静态文件配置
staticMaxAge : '86400000*7', //静态文件的缓存周期,建议设置为7天
staticGetOnly : 'true', //静态是否只能通过get获取
staticLv2MaxAge : '1000*60*60', //静态文件2级缓存更新周期,建议设置为1小时
staticLv2Number :' 10000',//静态文件2级缓存数量,可以根据内存的大小适当调整
//session配置
isSession:'true', //是否开启session,开启会影响性能。
syncSession:'',//当多进程时是否开启session同步,开启会影响性能。
sessionName:555, //保存session id 的cookie 的name
sessionExpire:'', //false表示会话session,否则填入1000*60,表示session有效1分钟
clearSessionSetInteval:'1000*60*60', //自动清理垃圾session时间,建设设置为1小时
clearSessionTime:'1000*60*60*24',//会话session超时,建议设置为1天
//session内存存储
sessionDbStore:'false',//是否使用mongodb数据库存储session,如果设置为true,则不需要同步session
//deflate和gzip配置
isZlib:'true', //是否开启delate和gizp压缩,大并发压缩虽然可以减少传输字节数,但是会影响性能
ZlibArray:'',//只压缩数组中的content-type响应
//logger log4js 配置
isLog:'', //是否开启日志,过多的记录日志会影响性能,但是能记录系统运行情况
logLevel:111,//['trace','debug','info','warn','error', 'fatal'] 日志等级
logPath:'/', // "/mylogs/console.log" 日志存放目录
logMaxSize:'', //单个日志文件大小
logFileNum:'', //当单个日志文件大小达标时,自动切分,这里设置最多切分多少个日志文件
//Template
tempSet:'smarty', //使用哪种页面模版:jade或者ejs
tempFolder :'/example/static/', //默认读取模版的根目录
tempHtmlCache:'fas', //是否开启模版的html缓存,当输出模版需要大量数据库或缓存I/O操作,且实时性要求不高时可以使用
tempCacheTime:'1000*60*60',//模版缓存时间
tempCacheFolder:'tmp/template', //模版缓存 存放目录
//mongodb 配置
isMongodb:'', //是否开启mongodb支持,注意:如果使用数据库存储session,这里必须开启
MongodbIp:11111, //mongodb地址
MongodbPort:'', //mongodb端口
MongodbConnectString:true, //是否使用字符串连接,日入nae的连接方法,这个优先级高于地址+端口
MongodbConnectTimeout:'',//连接超时
MongodbMaxConnect:'',//连接池连接数
MongodbDefaultDbName:false,//默认使用的数据库名
poolLogger:'',//是否记录连接池的日志,建议关闭
MongodbRC:false,//如果是false表示不使用mongodb的副本集,否则为字符串,表示副本集的名称
MongodbRChost:[],//表示mongodb副本集的ip:port数组。
//自动加载模块 配置
AutoRequire:'', //是否开启模块自动加载,加载只有的模块可以使用 rrest.mod.模块名 来进行调用
ModulesFloder:true, //自动加载模块的存放目录,只读一层目录
ModulesExcept:'', //自动加载模块目录中例外不加载的模块
//ip地址访问过滤
IPfirewall:'', //是否开启IP过滤,开启会影响性能。
BlackList:'',//如果是true,表示下面这些是黑名单,如果是false,表示下面这些是白名单,路径设置优先级大于IP
ExceptIP:'', //正则表达式,匹配成功表示此IP可以正常访问,白名单
ExceptPath:'',//例外的路径,如果用户访问这个路径,无论在不在ip过滤列表中,都可以正常使用,白名单才能使用
NotAllow:1111, //禁止访问响应给客户端的信息
}