太诡异了。无言了

l8487 2009-12-03 06:12:28
某网站,正常运行中。。所有客户都没有问题。
某网吧有问题,
1、客户访问www.xxx.com。然后点击里边某个链接跳转到yyy.xxx.com。。。。
客户访问www.xxx.com的时候,有一个sessionid。当客户带着这个sessionid跳转到yyy.xxx.com的时候。yyy.xxx.com再pageload里边这么写的。
session["sess"+productid]="1";此时该域名为客户的sessionid变为sessionid2
2、客户提交页面。
验证session["sess"+productid]是否为空。。结果为空。。。
完毕!
为什么是空呢。我用httpwatch抓包也发现客户把访问yyy.xxx.com的时候创建的sessionid发送到服务器了啊。为什么服务器说不存在呢??

第二个问题。客户端sessionid的创建是再pageload前还是再pageload后。。。。。。或者说还是在session["sess"+productid]="1"的时候为客户创建了一个sessionid。。??
...全文
114 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuanbaishan1 2009-12-04
  • 打赏
  • 举报
回复
每天回帖即可获得10分可用分!
l8487 2009-12-03
  • 打赏
  • 举报
回复
可能大家看不太懂。。第一次提交是从A站到B站。。不验证session。但是在B站页面初始化的时候为用户分配了session。。用户把B站的页面处理完以后,提交到B站服务器丢session。。。
仅一个网吧这种情况,其他客户都正常。考虑这个客户的网络问题,或者网吧机器配置问题。
ares128 2009-12-03
  • 打赏
  • 举报
回复
不理解 如果你2个网站用的不是同一个web app的话 session怎么可能能取到呢?

这不就像你在a.txt的第2行保持了hello 然后到问b.txt说第二行是什么一样啊..
session 是根据你的sessionid在web app中次sessionid对应的内存中找对象啊
sessionid传过去了和你的数据传过去完全没关系啊
WalkingMichael 2009-12-03
  • 打赏
  • 举报
回复
先看看ASP.NET State Service有否开启?
bolya 2009-12-03
  • 打赏
  • 举报
回复
如果前后两个网站 使用的不是同样的服务器,会不会 session 会变啊
你用cookie保存信息试试,
也许能解决问题
wuyq11 2009-12-03
  • 打赏
  • 举报
回复
跨域使用cookie
l8487 2009-12-03
  • 打赏
  • 举报
回复
问题补充说明。从A域post到B域
请求包内容:
POST /www/wwwwy/wwwwww.aspx HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/QVOD, application/QVOD, */*
Referer: http://www.wwwww.com.cn/ww/Swwww.aspx?ProductId=145454585
Accept-Language: zh-cn
Content-Type: application/x-www-form-urlencoded
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; Embedded Web Browser from: http://bsalsa.com/)
Host: ww1.the365.com
Content-Length: 410
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: ASP.NET_SessionId=a0c0lrehgplug0j11dsev445
B域应答包消息
HTTP/1.0 200 OK
Date: Thu, 03 Dec 2009 08:27:20 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
Set-Cookie: ASP.NET_SessionId=i1yo0l55ltguvoegnzlpwcje; path=/; HttpOnly
Cache-Control: private
Content-Type: text/html; charset=gb2312
Content-Length: 26046
Via: 1.0 zb55:80 (Cdn Cache Server V2.0)
Connection: keep-alive



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.。。。。。。。。

B域表单填写完毕。提交。
请求包
POST www/www.aspx HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/QVOD, application/QVOD, */*
Referer: http://wwwww.wwwww.com/www/www/wwww.aspx
Accept-Language: zh-cn
Content-Type: application/x-www-form-urlencoded
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; Embedded Web Browser from: http://bsalsa.com/)
Host: ww1.the365.com
Content-Length: 4285
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: ASP.NET_SessionId=i1yo0l55ltguvoegnzlpwcje
应答包
HTTP/1.0 200 OK
Date: Thu, 03 Dec 2009 08:27:48 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
Cache-Control: private
Content-Type: text/html; charset=gb2312
Content-Length: 74
Via: 1.0 zb55:80 (Cdn Cache Server V2.0)
Connection: keep-alive

session不存在。
PandaIT 2009-12-03
  • 打赏
  • 举报
回复
生命周期从Session_Start到Session_End

在Application_BeginRequest后可用

在Global.asax中可以设置session的session_start和session_end事件。这个是一个SESSION的生存期。。你可以通过这个来控制用户的SESSION情况。

具体你的问题不太清楚!!
l8487 2009-12-03
  • 打赏
  • 举报
回复
我再客户机器上登录csdn没问题。。
fuda_1985 2009-12-03
  • 打赏
  • 举报
回复
可能禁掉了什么东西造成的吧!

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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