在此打个广告:金色海洋的自然框架开源社区QQ群:82598514 ,希望大家多多支持

ASP.NET实现多域名多网站共享Session值
  1、实现功能:可设置哪些站点可以共享Session值,这样就防止别人利用这个去访问

  要想实现这个功能就必须得把Session值 放入数据库中, 所有我们先在VS命令工具下注册一个

命名如下:aspnet_regsql.exe -S [数据库服务地址] -E -ssadd  具体格式请参考 /?

添加成功后我们休要对ASP.NET生成的存储过程进行简单的修改,
    打开ASP.net为我们创建的数据库“ASPState” 找到存储过程“TempGetAppID”
    然后修改存储过程如下:

USE [ASPState]GO/****** Object:  StoredProcedure [dbo].[TempGetAppID]    Script Date: 11/21/2011 16:15:27 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER OFFGO

ALTER PROCEDURE [dbo].[TempGetAppID]@appName    tAppName,@appId      int OUTPUTASSET @appName = LOWER(@appName)SET @appId = NULLset @appId=640732509  --这个是我自己测试时写死的  你可以通过系统数据库tempdb中的ASPStateTempApplications查询到站点appId 记住只有当网站的Seeion配置是
数据库中 而且保存过一次Session值才能查询的到    /*    --SELECT @appId = AppId    --FROM [tempdb].dbo.ASPStateTempApplications    --WHERE AppName = @appName     以上注释办法为原来ASP.net 自动生成的*/

IF @appId IS NULL BEGINBEGIN TRAN        

SELECT @appId = AppIdFROM [tempdb].dbo.ASPStateTempApplications WITH (TABLOCKX)WHERE AppName = @appName

IF @appId IS NULLBEGINEXEC GetHashCode @appName, @appId OUTPUT

INSERT [tempdb].dbo.ASPStateTempApplicationsVALUES            (@appId, @appName)

IF @@ERROR = 2627 BEGINDECLARE @dupApp tAppName

SELECT @dupApp = RTRIM(AppName)FROM [tempdb].dbo.ASPStateTempApplications WHERE AppId = @appId

RAISERROR('SQL session state fatal error: hash-code collision between applications ''%s'' and ''%s''. Please rename the 1st application to resolve the problem.', 18, 1, @appName, @dupApp)ENDEND

COMMITEND

RETURN 0                                                                                                           

这个就可以共享了,但我们还得解决一个问题就是替换客户端的SeeionID ,我们可以添加一个处理程序来利用SessionIDManager类来进行处理,
实例我就不写了,我值写个替换的方法

 SessionIDManager sessionid = new SessionIDManager();bool a;bool b;                sessionid.SaveSessionID(this.Context, "这里是SeeionID", out a, out b);

最后修改配置文件
在System.Web节点下添加 <sessionState mode="SQLServer" sqlConnectionString="data source=数据连接;user id=sa; password=123456;" ></sessionState>

ok  一切搞定 你去试试把

转载于:https://www.cnblogs.com/happyyouandme/archive/2011/11/21/2257512.html

ASP.NET实现多域名多网站共享Session值相关推荐

  1. ThinkPHP中的二级域名通过cookie共享session从而实现同步登录

    二级域名news和www指向同一个路径 <VirtualHost *:80>DocumentRoot "D:\data\www\think_www\www\home"S ...

  2. .NET二级域名共享Session

    ASP.NET二级域名站点共享Session状态今天, 我要写的是如何在二级域名站点之间,主站点和二级域名站点之间共享Session.首先, Session要共享,站点之间SessionID必须要一致 ...

  3. PHP 实现多网站共享用户SESSION 数据解决方案

    PHP 实现多网站共享用户SESSION 数据解决方案 来源URL:http://blog.csdn.net/dongdongzzcs/article/details/6906613 一.问题起源 稍 ...

  4. PHP实现同服务器多个二级域名共享 SESSION

    现在很多分类信息网站都会分出很多个二级域名出来,比如:sh.ganji.com(上海赶集网), su.ganji.com(苏州赶集网)等等,像这种拥有多个二级域名的网站,该如何实现同步共享sessio ...

  5. 从域名到网站—虚机篇

    一.流程规划: 二.具体执行 第一步.注册域名 1.重新认识域名 例如:www.abc.com com                    顶级域名 abc.com            二级域名 ...

  6. asp毕业设计——基于asp+access的精品课程教学网站设计与实现(毕业论文+程序源码)——精品课程教学网站

    基于asp+access的精品课程教学网站设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于asp+access的精品课程教学网站设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦.需 ...

  7. 通过域名访问网站的原理过程

    转自:http://www.cootem.com/web/465.html 学习建设网站或了解网站访问流程,我们应先了解网络(Web)基本的运作方式. 也就是从我们在浏览器中输入域名到浏览器显示页面, ...

  8. cookie跨域,二级域名之间如何共享

    概述 同域名的二级域名实现共享,比如:www.domain.com下登录后,在其它的二级域名,my.domain.com.bj.domain.com.sh.domain.com等二级域名都能共享登录c ...

  9. 【原创】【推荐】《ASP.NET 3.5+SQL Server网站模块化开发全程实录》出版记

    进过半年多的努力,<ASP.NET 3.5+SQL Server网站模块化开发全程实录>一书终于得以由清华大学出版社顺利出版. 第一次出版此类图书,不免其中会有诸多纰漏,还望广大读者不吝指 ...

最新文章

  1. 选择头秃还是植发?大数据告诉你植发行业水有多深?
  2. 网络流媒体协议之——RTSP协议
  3. 改善Java应用程序性能的快速技巧
  4. 7-1 矩阵A乘以B (30 分)
  5. Java Http编程
  6. Canny边缘检测算法原理及其VC实现详解(一)
  7. 批量删除redis key
  8. CR渲染器全景图如何渲染颜色通道_3dmax云渲染是什么?渲染100使用步骤
  9. Java和Android笔试题
  10. word图片另存为变黑色_Word的图片另存为图片格式的方法
  11. 404丨戳心!等我写完这行代码就和你“吃鸡”
  12. PHP 2014 CHM手册
  13. 智能车摄像头组怎么在OLED屏画出中线
  14. 《Spring实战》学习笔记-第六章:web视图解析
  15. 2020 数据科学平台领域最具商业合作价值企业盘点
  16. pandas filter数据筛选
  17. 实现163邮箱发送邮件功能
  18. 歪门邪道之解决首屏图片加载闪烁问题
  19. JS将数字金额转换为大写人民币汉字
  20. 洛谷P1233 木棍加工

热门文章

  1. 使用 iTextSharp 生成 PDF 表格
  2. 可靠性测试设备技术含量_品牌手机厂商为何如此重视可靠性测试,海拓仪器一语道破玄机...
  3. cmake 在安装mysql_cmake安装mysql
  4. python读取多通道信号中的一个通道_RFID多通道读写器的具体应用
  5. 使用J-LINK烧写MICRO2440的NOR
  6. python中的异或操作_Python中的异或和位操作的反转
  7. drupal php filter,Drupal A-Z and number filter
  8. vs cpp生成h文件_lib 和 dll 的区别、生成以及使用详解
  9. 服务器启动将字典加载到内存中@PostConstruct
  10. 不均衡数据集采样1——SMOTE算法(过采样)