怪事?

lxhlizhenhao 2006-07-31 09:17:56
最近帮朋友做一个网站,在开发过程中开始都很正常.可是最近不知怎么搞的,在调试或运行网站程序时虚拟目录下突然多了一串字符,比如:
我输入http://localhost/bn/web/index.aspx,网页出来了,但是在地址栏里却变成了
http://localhost/bn/(pyg5pf45jvemnhqyh0e3tk55)/web/index.aspx
,这里bn是虚拟目录,而中间那串字符每次都不一样
我觉得似乎是配置有问题,但是与其他程序比起来好象又都是一样的,不知道这是怎么回事?
...全文
151 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lxhlizhenhao 2006-07-31
  • 打赏
  • 举报
回复
谢谢两位,的确所你们所说,不知什么时候我的cookieless变成了true,改成false,那串讨厌的所谓的Session ID就没有了!
LoveCherry 2006-07-31
  • 打赏
  • 举报
回复
Session状态应该存储在两个地方,分别是客户端和服务器端。客户端只负责保存相应网站的SessionID,而其他的Session信息则保存在服务器端。在ASP中,客户端的SessionID实际是以Cookie的形式存储的。如果用户在浏览器的设置中选择了禁用Cookie,那末他也就无法享受Session的便利之处了,甚至造成不能访问某些网站。为了解决以上问题,在ASP.NET中客户端的Session信息存储方式分为:Cookie和Cookieless两种。

  ASP.NET中,默认状态下,在客户端还是使用Cookie存储Session信息的。如果我们想在客户端使用Cookieless的方式存储Session信息的方法如下:

  找到当前Web应用程序的根目录,打开Web.Config文件,找到如下段落:

<sessionState
  mode="InProc"
  stateConnectionString="tcpip=127.0.0.1:42424"
  sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
  cookieless="false"
  timeout="20"
/>

  这段话中的cookieless="false"改为:cookieless="true",这样,客户端的Session信息就不再使用Cookie存储了,而是将其通过URL存储。关闭当前的IE,打开一个新IE,重新访问刚才的Web应用程序,就会看到类似下面的样子:

http://localhost/MyTestApplication/(ulqsek45heu3ic2a5zgdl245)/default.aspx

中黑体标出的就是客户端的Session ID。注意,这段信息是由IIS自动加上的,不会影响以前正常的连接。

coley 2006-07-31
  • 打赏
  • 举报
回复
你的webconfig禁用了会话么?检查

62,047

社区成员

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

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

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

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