Node.js使用iis管理器中session丢失处理

原创 2015年11月20日 14:56:23

/**

 *2015/11/20 

 */

服务器环境:Server 2008 r2 

Iis管理器版本:6.1

项目:Node.js

原因:Node.js中的session丢失

 

解决方案:

1.memcached安装

1.1下载Memcached

1.2 cmd > memcached -d install

1.3 cmd > 输入 memcached -h第一行有版本输出安装好了

2.app.js添加修改

2.1添加

var connect = require('connect');

var MemcachedClient = require('./tooles/memcached_helper.js');
var MemcacheStore = require('connect-memcached')(connect);

在var app = express();下添加

MemcachedClient.init();

2.2修改

app.use(usession({

........

}));

改为

app.use(session({
    secret: 'rob_admin',
    name:'rob_admin',
    cookie:{maxAge:800000},
    secret: 'AuthenticationSecret',
    store: new MemcacheStore({client: MemcachedClient}),
    resave:false,
    saveUninitialized: true
}));

3.新建tooles/memcached_helper.js

内容如下:

(function(){
    var memconfig = require('../serverconfig.js').Memcached;
    var Memcached =require('memcached');
    Memcached.config.poolSize = 100;
    dummy: function dummy(error, ok) {
        if(error){
            console.error('memcached err:',JSON.stringify(error));
        }
    }
    module.exports = {
        init: function ctor() {
            memcachedClient = new Memcached(memconfig.host+':'+memconfig.port,{poolSize:100});
            console.log("memcached is started! host"+memconfig.host+':'+memconfig.port);
        },
        set: function addToCache(key, val, expire, callback) {
            if (!expire) expire = 5*60; //sec
            if (!callback) callback = dummy;
            memcachedClient.set(key, val, expire, callback);
        },
        get: function getFromCache(key, callback) {
            if (!callback) callback = dummy;
            memcachedClient.get(key, callback);
        },
        del:function delFromCache(key,callback){
            if (!callback) callback = dummy;
            memcachedClient.del(key,callback);
        }
    };
}).call(this);

3.1新建/serverconfig.js

(function(){

    //缓存服务器配置
    var Memcached={
        host:'192.168.1.108',
        port:11211
    }
    module.exports = {
        Memcached:Memcached
    };

}).call(this);

----------------------------------------------------------------------------------------


版权声明:感觉好久Make下来吧,不然下次不好找

相关文章推荐

NVM--Node.js管理器的安装,从零做起(Windows版本)

Node.js管理器NVM的安装nvm是Node.js的版本管理工具,里面分为nvm和npm,非常好用。Nodejs管理器NVM的安装 下载NVM 认识NVM命令行 配置NVM1. 下载NVM在git...

《Node.js简记》包管理器npm的安装、加速和常用指令

前言:上篇 《Node.js简记》 安装Node.js并实现Helloworld 我们已经完成了node开发环境的安装配置,接下来我们先来了解一下node的一个重要的工具——包管理器npm。npm安装...

Node.js NPM包管理器

NPM(Node Package Manager ,Node包管理器)是Node.js的包管理器,它允许开发人员在Node.js中创建,共享并重用模块。它也可以用于共享完整的Node.js应用程序,模...

node.js第六课(包管理器和代码调试)

一、如何使用包管理器                     Node.js包管理器,即npm是N...

node.js包管理器和代码调试

一、如何使用包管理器                     Node.js包管理器,即npm是N...

node.js node包管理器--npm

摘要 npm(node package manager),是node.js的一个包管理器,用于第三方模块的下载、安装和管理。 npm收录着庞大而丰富的第三方资源,截至目前为止已经收录了22010...

Node应用进程管理器pm2的使用

本文转载自:豆瓣-PM2介绍 更多内容见github上的pm2说明文档pm2pm2 是一个带有负载均衡功能的Node应用的进程管理器. 当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进...

解决64位win7系统IIS7[ODBC 驱动程序管理器]未发现数据源名称并且未指定默认驱动程序

asp+sql 2000 系统,同过excel批量上传时报如下错误: Microsoft OLE DB Provider for ODBC Drivers 错误 ’80004005′ [Mic...

node包管理器npm 学习笔记(5)

1. Npm简介 Npm (Node Package Manager ,Node包管理器)是node.js包管理器。它允许开发人员在node.js应用程序中创建、共享并重用模块。它也可用于共享完整的...

基于Boost.MultiIndex实现的Session管理器

#ifndef SESSION_MANAGER_ #define SESSION_MANAGER_ #include #include #include #include #include ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)