出现的问题 上个月有朋友负责的站点在域名变更(变更后的域名比变更前更长)后出现了个别用户在登录时失败的情况他确认在升级域名前后程序和的配置都没有变更过环境如下 Server IIS 出现的现象 个别用户登录时服务端无应答 查询IIS的日记发现日记显示是应答http 正常 通过服务端和客户端捉包发现服务端没有应答包到客户端 解决过程 googlebaidu了半天没找到相关问题的解决方法通过以上现象同时在客户端使用HttpAnalyzer捉取能正常登录用户的包发现在用户登录后服务端会写入多个cookie包括用户后的一些个人资料(如上次登录时间登录IP等一些个人配置资料)初步怀疑是由于IIS写入Cookie时有问题因为域名升级后比原来的长导致cookie的大小变大了 查询RFC协议发现在节有对cookie限制的描述合计个cookies每个域名个cookies每个 cookie(含名称值有效期等)字节但比对了系统写入的cookie大小也差不多有个字节离规定好像还比较远找不到其它原因也只能试一下减少cookie了于时去掉了两个没有什么用处的cookie再试问题就解决了 总结 好像在IIS下特定环境下就会出现这个问题因为当时整个项目有多台服务器做了F但只有台出现这个问题针对这个问题我在 IIS下也进行了一下测试发现当Cookie的大小达到多字节时就会出现有应答为的包但应答的内容为空在IE上显示为 cannot display the webpage 所以具体能使用cookie有多大IIS和IIS下标准不一 建议不要将用户配置等过大的信息写入cookie搞不清楚什么时候IIS就出错了 以上是真实项目过程在遇到的问题希望能帮助到大家谢谢 |