md5 会话 ID 或内存缓存密钥可以吗?
当我的应用程序的存储对象设置为会话时,我收到此警告。
未知:会话 ID 太长或包含非法字符,有效字符为第 0 行 Unknown 中的 az、AZ、0-9 和 '-,'
因此我决定对会话 ID 进行 Md5 处理,警告现在消失了。但此代码对于所有存储选项(如 memcache 和 phparray)都是通用的。所以我的问题是,Md5 内存缓存密钥或会话 ID 可以吗?它会产生其他问题吗?或者有更好的解决方案吗?
I am getting this warning when storage object of my application is set to session.
Unknown: The session id is too long or contains illegal characters, valid characters are a-z, A-Z, 0-9 and '-,' in Unknown on line 0
so I decided to Md5 session id and warning is gone now. But this code is common for all storage options like memcache and phparray. so my question is, is it ok to Md5 memcache keys or session ids? will it create some other problem ? or is there any better solution ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
为此使用 md5 是不行的,因为无限数量的字符串可能会产生相同的哈希值。所以你不想这样做!
还有更好的解决办法吗?
是的。与其试图解决你的问题,不如解决它!您的会话 ID 包含非法字符或太长!创建有效的会话 ID!
It is not ok to use md5 for that because an infinite number of strings can result in the same hash. So you don't want to do that!
Is there any better solution?
Yes. Instead of trying to hack around your problem, address it! Your session id contains illegal chars or is too long! Create valid session ids!