让我来解决一些可能与您的问题有关的事情…可能与您无关,但是我认为其他人可能会遇到完全相同的问题,并且可能会从我的(有限的)经验中受益…因为我也一次有这个问题。
作为从PHP到Python(从不回头)的人,我认为了解会话如何在幕后工作很有用。除非您(a)想要通过实践来了解有关会话管理的更多信息,或者(b)需要现有框架不提供的功能,否则实现自己的会话框架可能不是 一个好主意。
维基百科始终是一个很好的起点。底线:会话数据存储在服务器上的某个位置,并由唯一标识符(某种形式的哈希)索引。该标识符通常作为cookie或作为查询字符串(URL)的一部分在客户端和服务器之间来回传递。为了安全起见,您将要使用SSL连接或使用其他数据(例如IP地址)验证会话ID。默认情况下,PHP将会话存储为文件,但是在共享服务器上可能会带来安全风险,因此您可能需要覆盖会话引擎,以便将会话存储在数据库中。Python Web框架具有类似的功能。
当我开始使用Python进行网络编程时,我注意到了两件事。首先,PHP在语言中包含了很多魔力,这使刚开始的程序员(在2003年进入我的生活)很容易学习该语言,但是并没有教我太多有关一切工作原理的知识。因此,我发现自己研究了许多有关Web应用程序的主题,特别是数据库连接池,URL映射,会话和线程。PHP(和Django,据我所知)为您提供了抽象。其次,PHP是一种非常糟糕的语言;),但它可以完成工作!!
我个人使用CherryPy进行Web开发。它具有会话管理作为您可以打开的“工具”。