[讨论]关于文本Session实现的一点困惑

| 17 Comments | 0 TrackBacks | WebBlog Articles

纯粹技术探讨。
近来在研究自定义文本Session,根据我自己对Session的理解和体会,实现办法可以是:

1。用户登陆,密码校对后,以一种算法随机生成一随机数字Session_id,具体实现就是服务器生成一纯文本文件,就以Session_id命名,用户id,密码等敏感信息写入这个文本,本地cookie写入用户id和Session_id。。由于登陆时候可以选择Session/cookie保持实效。这个数字比如[-1(不保存)+30(保存30天)等。。],同时写入Session文本和cookie。。

2。这样,如果选择保持登陆信息(比如+30),则在30天内用户再次访问时候,从cookie中获取Session_id。通过读取服务器上的Session_id文本,来检验用户id和密码。。如果通过。则自动认为登陆。

现在我的问题就是远程服务器上的Session文本文件的处理。大家知道,Session_id是随机产生的,那么相同的用户在不同的地方,不同的登陆时间得到的Session_id都是不同的,那么如果不对这些文本处理。久而久之,肯定有很多废弃了。。。那么应该对这些进行删除处理的。。那么机制呢?

文本的特殊性质,为了节省资源,一般只有在用户重新访问的时候才进行Session文本的时效验证。那么那些可能永远也访问不到的Session文本就验证遥遥无期了。

如果采用一种机制对Session文本进行删除,比如把时效写入Session文本,按照时效自动删除。。。但是时效选择比较长的呢?他可能是有效的Session,也可能是废弃的Session。如果删除,造成该用户下次不能自动登陆。。那就失去保持的含义了。如果不处理。则浪费空间。影响效率。 困惑ing。。。

希望各位高人指点。还有我对Session理解不对的地方也请不吝指教:)

引用通告|TrackBacks (0)

本日志的TrackBack URL: http://easun.org/cgi-bin/mtos/tb_mt_41.pl/9.

本文相关评论|Comments (17)

曾研究過的一個項目...汗.....

你產生一個 無設刪除時間的Session  及 產生一個 設了時間的Session
並使用 notpad打開看看吧.....

恩。。反正我现在不想让他们永久登陆了。。所以。。删除。哈哈:)

我的意见,如果选择永久登陆,那么生成的Session文件名以前加一个特殊的标记 比如 leo 之类的,这样每隔一段时间清理文件的时候可以保留这些。。

不过,如果永久登陆的人的cookie丢失了。。那。。。

下面引用由hztz在 2004/11/02 00:29am 发表的内容:
我的意见,如果选择永久登陆,那么生成的Session文件名以前加一个特殊的标记 比如 leo 之类的,这样每隔一段时间清理文件的时候可以保留这些。。
不过,如果永久登陆的人的cookie丢失了。。那。。。

恩。。。和我想的一样。。。就是我不知道这个文本是否是废弃的。。

所以。。可以选择7天=永久?就是不允许永久登陆。最长也只能选择7天登陆。。

或者? 这个文件保留。当一定时间比如10天没有人来访问它?认为它已经废弃?这样如果他第11天来了,对不起,请登陆吧?呵呵:)

那就用

用户名 + timemark + Session id

作文件名字。。。timemark表示保存的时间长短

这样登陆的时候就能直接检查是否过期了。。

似乎太长了吧?
我觉得直接修改属性,把他的创建时间修改成要过期的日子?也许一个stat函数就解决了?
我已经决定分目录了:)

下面引用由路杨在 2004/11/02 00:45am 发表的内容:
似乎太长了吧?
我觉得直接修改属性,把他的创建时间修改成要过期的日子?也许一个stat函数就解决了?
我已经决定分目录了:)

万一服务器时间错误呢?咔咔
下面引用由hztz在 2004/11/02 00:53am 发表的内容:
万一服务器时间错误呢?咔咔

时间不是读取的,是自己算出来写进去的,和实际的访问时间没有关系拉:)

让用户重新登陆一下没关系的嘛,几秒的事情

不如 SESSION 每月定期删除一次...

下面引用由红岭小石榴在 2004/11/03 00:00am 发表的内容:
让用户重新登陆一下没关系的嘛,几秒的事情
不如 SESSION 每月定期删除一次...

恩,目前我就是准备取消 “永久登陆” 这个选项

恩,一年都不重登陆一次的利率是很小的

下面引用由红岭小石榴在 2004/11/10 00:56am 发表的内容:
恩,一年都不重登陆一次的利率是很小的

一般系统都要重装一次呢。。

现在me很懒。。不装系统了。。。
严重跑题中。。。

世界尽头失落在海里的城市,狮子流泪的地方。让我们跑题……

既然有cookies 还要进程号干嘛呢?
没有cookies用进程号还可以理解的说~~~~~~~~~~~~~~~

发表该文评论|Leave a comment

最近发表|Recent Entries

[八卦]话说修路这件事

建国路貌似又在修。根本没有办法步行。这个让我想起来一个笑话:话说某A国人来北京,在东城区丢了一枚戒指,于是乎找警察,警察告诉他尽可能的帮他找。过了几天,此人发现整个东城的马路都挖开了,于是感叹曰:北京的警察真好。看来这个笑话的地点可以换在朝阳了?是不是某人的戒指又丢了?PS: 城市规划城市规划,年年挖年年修。。。生命不休,挖路不止…

[SiteLog]Blog升级到了 Movable Type Pro 4.25

Thisi is a SiteLog of Easun's WebBlog.今天终于升级到了 Movable Type Pro 4.25 ,貌似一切顺利,也没有发现什么特别大的改动?只是 Community Pack 变成了 1.62, Professional Pack 升级成了1.3 。其他的一切顺利,模版也没有修改,我甚至连重建前台HTML的事情都没有做。。。就这样吧,继续用这个风格,等有时间了再慢慢研究吧。如果非要说有什么修改的话,就是评论的登陆方式又丰富了很多,包括…

IE脚本错误,可以尝试以下办法

IE 脚本错误是个很麻烦的问题,一般定位都是 JS 引擎 和 VB 引擎出错。但是有时间反复注册 jscript.dll 和 vbscript.dll 也不能解决问题。具体表现 部分 js 解析正常,而部分就不行,尤其是基于 Web2.0的网站。不说别的,就连 ie7/ie8 本身第一次运行向导的"保存设置"也出错。其实研究下,貌似都出现在 XML 解释上? 重新注册…