使用ASP.NET网站 中间有些数据量大的时候导致this.Session.SessionID这个丢失(可以理解成SESSION)于是我做了如下设置
<sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;user id=sa;password=123456" cookieless="true" timeout="60000"/>
用服务端的方式保存了....但是问题出现了...地址栏出现 knms255wcfyacazmhyb1 这样的东西不是一个简单的地址...有点难看怎么办啊
cookieless这个值貌似不能改掉  改掉了就起不到作用 求详细解答

解决方案 »

  1.   

    cookieless="true"需要改成cookieless="false",是可以改的
      

  2.   

    cookieless="true"需要改成cookieless="false",是可以改的
      

  3.   

    丢失有2种可能
    1是客户端cookie清空了
    2是服务器端session内容丢失cookieless="true" 的实质是把原来存在cookie里的sessionid放在url里回传,所以能解决第一种问题
    但如果是访问人数过多造成的session丢失的话,极有可能是第二种情况
      

  4.   

    必须改成cookieless="false"
    session丢失和这个是没有关系的,这个设置是支持浏览器禁用cookie时仍然能使用session,URL地址栏中看上去奇怪的字符串就是当前的sessionid。
    应该检查session服务的设置是否正确,session的保持时间是否合适,是否有代码逻辑清除session
      

  5.   

    我前不就也遇到这个问题 若是程序没有问题的 那就是服务商那边的服务器托管了太多的网站 或是对服务器重新进行相关的设置
    后来我更改了配置
    <sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="30"/>
    这样之后让服务商开动asp.net状态服务 可以解决问题
      

  6.   

    我之前也遇到这个问题 若是服务商方面的问题那就是那边的服务器托管了太多的网站或是重新设置了相关参数,
    我更改了配置
    <sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="30"/>
    然后让服务商开通asp.net状态服务即可解决问题
      

  7.   

    我之前也遇到这个问题 若是服务商方面的问题那就是那边的服务器托管了太多的网站或是重新设置了相关参数,
    我更改了配置
    <sessionState mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="30"/>
    然后让服务商开通asp.net状态服务即可解决问题