如何保存PHPSESSID?

如何保存PHPSESSID?,php,Php,有人知道PHPSESSID的工作原理吗?它是如何工作的,在哪里保存?它是保存在客户端还是服务器端,如果另一台电脑知道我的PHPSESSID,他能从他的电脑连接到我的帐户吗?是的,这就是为什么最好不要通过url传递会话id,而是使用cookies: php.ini:session.use\u cookies=1 在这种情况下,服务器php.ini:session.save_路径中有一个文件夹用于存储文件,硬盘中还有一个cookie用于将凭据映射到已注册的会话id php.ini:session.c

有人知道PHPSESSID的工作原理吗?它是如何工作的,在哪里保存?它是保存在客户端还是服务器端,如果另一台电脑知道我的PHPSESSID,他能从他的电脑连接到我的帐户吗?

是的,这就是为什么最好不要通过url传递会话id,而是使用cookies:

php.ini:session.use\u cookies=1

在这种情况下,服务器php.ini:session.save_路径中有一个文件夹用于存储文件,硬盘中还有一个cookie用于将凭据映射到已注册的会话id

php.ini:session.cookie\u生命周期

设置此cookie将无限期为0的生存时间,而

php.ini:session.gc\u maxlifetime

定义它在服务器上的生存时间

使用

php.ini:session.cookie\u httponly=1,如果使用ssl,则session.cookie\u secure=1

提高对cookie信息的保护,使其通过javascript不可用,这是xss攻击将cookie发送到恶意目的地时的最后一个好机会


正如爆炸药片所指出的,无论如何,总有一种方法可以被劫持。您所能做的就是让它变得更难。

是的,这就是为什么最好不要通过url传递会话id,而是使用cookies:

php.ini:session.use\u cookies=1

在这种情况下,服务器php.ini:session.save_路径中有一个文件夹用于存储文件,硬盘中还有一个cookie用于将凭据映射到已注册的会话id

php.ini:session.cookie\u生命周期

设置此cookie将无限期为0的生存时间,而

php.ini:session.gc\u maxlifetime

定义它在服务器上的生存时间

使用

php.ini:session.cookie\u httponly=1,如果使用ssl,则session.cookie\u secure=1

提高对cookie信息的保护,使其通过javascript不可用,这是xss攻击将cookie发送到恶意目的地时的最后一个好机会


正如爆炸药片所指出的,无论如何,总有一种方法可以被劫持。您所能做的就是让它变得更难。

会话数据以会话ID作为标识符保存在服务器端的文件系统中。实际位置会有所不同,您可以通过session.save_path ini设置进行更改。您还可以更改PHPSESSID名称,但这将作为cookie提供给客户端并引用会话文件。在我的系统上

/var/lib/php5/sess_53jsd3icrkbqbbfrl6qlv6e6a7
浏览时,我有PHPSESSID cookie 53jsd3icrkbqbbfrl6qlv6e6a7


由于这是用来识别会话的,因此如果会话被暴露,则存在安全风险。因此,如果用户知道会话ID,则可以窃取您的会话。这称为会话劫持。请注意,即使session.use_cookies=1也不够,因为如果有人知道该cookie,也不会阻止他们设置该cookie。使用https加密cookie是我知道的唯一有效的解决方案。

会话数据以会话ID作为标识符保存在服务器端的文件系统上。实际位置会有所不同,您可以通过session.save_path ini设置进行更改。您还可以更改PHPSESSID名称,但这将作为cookie提供给客户端并引用会话文件。在我的系统上

/var/lib/php5/sess_53jsd3icrkbqbbfrl6qlv6e6a7
浏览时,我有PHPSESSID cookie 53jsd3icrkbqbbfrl6qlv6e6a7


由于这是用来识别会话的,因此如果会话被暴露,则存在安全风险。因此,如果用户知道会话ID,则可以窃取您的会话。这称为会话劫持。请注意,即使session.use_cookies=1也不够,因为如果有人知道该cookie,也不会阻止他们设置该cookie。使用https加密cookie是我所知道的唯一有效的解决方案。

我认为这个答案会对您有所帮助。我想这个答案会对你有所帮助。还有,可以用来代替基于文件的会话。还有,可以用来代替基于文件的会话。