Php 您应该将session.save_路径放在哪里?

Php 您应该将session.save_路径放在哪里?,php,session,Php,Session,由于默认的/tmp通常对共享主机中的所有帐户开放,因此通常建议使用会话。保存路径并设置其他位置 是否假定更好的位置在/home/username/example\u session\u tmp/中,只要它不在/home/username/public\u html/中 如果是这样,如果黑客能够在public\u html中插入脚本并读取。/example\u session\u tmp/?或者这是唯一的方法,并且通常假定您的站点不受脚本注入的影响 注意:数据库会话处理程序是一个可选选项,但我们假

由于默认的
/tmp
通常对共享主机中的所有帐户开放,因此通常建议使用
会话。保存路径
并设置其他位置

是否假定更好的位置在
/home/username/example\u session\u tmp/
中,只要它不在
/home/username/public\u html/

如果是这样,如果黑客能够在
public\u html
中插入脚本并读取
。/example\u session\u tmp/
?或者这是唯一的方法,并且通常假定您的站点不受脚本注入的影响


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

我同意您加入
/home/username/example\u session\u tmp/

但是,

  • 如果每个服务器只有一个站点,则无需更改路径
  • 如果您想让共享托管成为您的解决方案,那么移动到新路径是一个好主意(您可以检查
    apachempm-itk
    php5-fpm
  • 如果希望有多台服务器,最简单的方法是将会话放入数据库中,或者为会话文件创建一个共享文件夹(nfs、samba)

如果一个黑客在你的网站上输入了一个脚本,你就没办法阻止他拦截会话。如果您的Web服务器有权访问会话,则该用户将访问会话。无论你把它放在哪里,黑客只需调用
session\u save\u path
就可以找到它

总而言之:

  • 防止黑客访问。如果服务器完全开放,谁会关心会话?首先确保这一点
  • 将save_path设置为
    ~/sessions
    可以防止其他共享主机用户篡改您的会话。这不会阻止访问您的Web服务器的人查看和篡改会话

如果黑客能像你描述的那样访问会话,那么你的问题就最小了。@Dagon true,所以我想把它设置为
/home/username/example\u session\u tmp/
是最好的方法,或者有其他建议吗?你能详细说明一下
~/sessions
的确切位置吗?哦,对不起
~/
表示您在许多*nix系统上的主目录。这是
/home/username/
的快捷方式。