1

由于默认设置/tmp通常对共享主机中的所有帐户开放,因此通常建议使用session.save_path并设置不同的位置。

是否假设一个更好的位置在/home/username/example_session_tmp/只要它不在/home/username/public_html/

如果是这样,万一黑客能够注入脚本public_html并阅读,那是否仍然容易受到攻击../example_session_tmp/?还是这是唯一的方法,并且通常假设您的网站不受脚本注入的影响?

注意:数据库会话处理程序是一个替代选项,但我们假设它是不可能的。

4

2 回答 2

1

我同意你的加入/home/username/example_session_tmp/

但,

  • 如果每台服务器只有一个站点,则无需更改路径
  • 如果您想将共享托管作为您的解决方案,那么移动到新路径是一个好主意(您可以检查apache-mpm-itkphp5-fpm
  • 如果您想拥有多个服务器,最简单的方法是将会话放入数据库中,或者为会话文件创建一个共享文件夹(nfs、samba)。
于 2012-08-22T20:14:05.857 回答
1

如果黑客将脚本进入您的站点,那么您无法阻止他阻止会话。如果您的网络服务器有权访问会话,则该用户将。无论你把它放在哪里,黑客都可以通过简单的调用找到session_save_path.

总结一下:

  • 防止黑客获得访问权限。如果您的服务器完全开放,谁会关心会话?首先确保这一点。
  • 将 save_path 设置为~/sessions 应该可以防止其他共享主机用户篡改您的会话。这并不能阻止访问您的网络服务器的人看到和篡改会话。
于 2012-08-22T20:14:19.607 回答