session共享

woyongyuanaita 2005-11-24 08:18:46
我现在在一台服务器上有两个站点,现在必须实现两个站点之间的sessin()共享,比如:a站点中session("u_id")="myname",那么在b站点中打开网页能的出session("u_id")的数据是"myname",高手赐教,捆饶我一个月了,这个问题。最后的79分了
...全文
290 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
laogou 2005-12-06
  • 打赏
  • 举报
回复
可能只有xmlhttp才能帮你(post传递变量参数)

ASP小偷程序如何利用XMLHTTP实现表单的提交

利用XMLHTTP来制作小偷的具体细节落伍很多人都发过和讨论过了,但是在制作ASP小偷的过程中,很多人就发现ASP小偷不如PHP小偷的那么强

大了。确实,如果在原网站如果存在表单提交或cookies的验证,对于ASP来说,不使用基于SOCKET的组件就难以完成,其实,XMLHTTP的另外两

个方法被我们忽略了,而这正是问题的关键。
下面首先来说说这个方法
1。.send()
由于流行的小偷是使用的GET而不是POST来传送数据,所以很多人忽略了这个方法,而使用SEND发送数据也很简单,就是SEND("内容"),可是,

发送表单就不是这么简单,因为你发送的表单如果是中文的话,就要牵扯到编码的问题了。
首先,你在OPEN 时要确定是用POST 即 .open("POST",地址,是否异步)
然后,在SEND里面加上你表单的内容,比如说,你要提交的表单有3个表单域,分别是A,B,C,对应的值分别是1,2,3,那么,你在SEND里这

样写就可以提交表单了,.send("A=1&B=2&C=3"),怎么样,很简单吧,是不是没想到呢?但是别高兴的太早了,我前面说到了,如果表单的值是

中文的话,数据传输的就会出错了。这里我们借助一个函数escape(),熟悉JAVASCRIPT的朋友都应该知道这个函数的作用了,现在VBSCRIPT同样支持这个函数。.send("A=escape('值1')&B=escape('值2')&C=escape('值3')")
2。.setRequestHeader()
接着上面的所说,你的数据send出去了,对方却不会接收到,为什么了,其实,那是因为你的HTTP头少了一个东西,然后用这个函数把加上去就可以了,具体就是.setRequestHeader("CONTENT-TYPE","application/x-www-form-urlencoded"), 告诉对方你是提交了一个urlencode编码的表单。

好的,说完了表单的提交来说怎么传送cookies和session


其实传送cookies也很简单了,同样利用这个函数在HTTP头里添加东西,比如,我当前在落伍的cookies是
cdb_sid=ybBiK0; cdb_cookietime=315360000; cdb_oldtopics=D869008D; cdb_visitedfid=1D45; cdb_auth=AQYHXVFDGERdsggVQA1VYUgxQDwFVV1dUAlwFAFRXVwU%2FbAIJB1lUCg; cdb_fid45=1113370145
现在我要发送这个cookies就直接是.setRequestHeader("Cookie","cdb_sid=ybBiK0; cdb_cookietime=315360000; cdb_oldtopics=D869008D; cdb_visitedfid=1D45; cdb_auth=AQYHXVFDGERdsggVQA1VYUgxQDwFVV1dUAlwFAFRXVwU%2FbAIJB1lUCg; cdb_fid45=1113370145")
当然,有些网站页面有页面判断功能,这个也不难,就是.setRequestHeader("Referer","来路的绝对地址")
这里还有个重要问题,就是这个方法由于是写HTTP头的,所以不能更改现有的HTTP头,对于怎么用asp获取对方页面的cookies或session并且发出去.
woyongyuanaita 2005-12-06
  • 打赏
  • 举报
回复
好的,我先看看能不实现,不知道其他高手还有没有其他的办法
woyongyuanaita 2005-11-29
  • 打赏
  • 举报
回复
现在我又登陆了几次了,又有几十分了,如果解决了,另开帖,全部相送
woyongyuanaita 2005-11-29
  • 打赏
  • 举报
回复
怎么存放???

比如:a帐号,b帐号登陆后a网站后我把a存放到数据公共表table1中,然后用户a,点a网站的中一连接(这个连接是b网站中的某个功能页面),去执行b网站的某个页面的功能,我怎么来确定打开b网站中这个页面的用户是a不是b?

而且a用户由于网络原因或者死机了,那么存放在table1中的a用户怎么处理???

是两个站点的某些功能合并成一个网站的后台处理功能(由于很多的原因,现在必须这样合并,需要解决的是这些功能界面的session如何的去共享)
fengxq87 2005-11-28
  • 打赏
  • 举报
回复
用一个数据库的表或文件将其存入,然后两个站点读取……
woyongyuanaita 2005-11-28
  • 打赏
  • 举报
回复
passport是什么东东
sdsuper 2005-11-27
  • 打赏
  • 举报
回复
参考passport的功能哦
woyongyuanaita 2005-11-27
  • 打赏
  • 举报
回复
同时为了安全性,不能使用cokiess
woyongyuanaita 2005-11-27
  • 打赏
  • 举报
回复
不能放在一个目录下,申明是两个不同的站点,而且必须这样才能实现其他的功能。存放在数据库中是个解决方案,有没有比较完整的方案,有过类似的朋友,给个思想,举个列子,能有代码就最好了
ygghost 2005-11-24
  • 打赏
  • 举报
回复
2个站点都是asp的么?

1 建议使用Cookies! Session在不同虚拟目录,不能共享.

Cookie 可以跨虚拟目录(就象你现在的情况),但是跨站点还是需要转换Domain

2 如果一定要用session的话.就建一个总的目录,在里面再建2个虚拟目录.

就是虚拟目录下建虚拟目录.如果这样也不行的话,就只有把Session写到表里面,

2个系统公共存取了.

  • 打赏
  • 举报
回复
学习csdn把两个站点放在一个目录里
woyongyuanaita 2005-11-24
  • 打赏
  • 举报
回复
请给我一个比较完整的解决方案,有代码更是感激不尽

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧