PHP更改会话cookie文件的内容

时间:2013-03-07 17:38:27

标签: php session session-variables session-cookies

我不确定如果我是用鼹鼠做山...

我有两台服务器A + B.我知道服务器A上存在一个带有会话cookie的PHP会话。我进一步知道其中一个会话文件(存储在var / lib / php5中)存在一个唯一的值,如:

$_SESSION['name'] = "1_colourXY"

我可以通过在目录/文件中搜索此值来识别此cookie文件(f.e。:file sess_489b9515146e7390ac03b5dabf36b70e)。

我现在希望服务器B能够告诉A将新值存储到此显式cookie文件中。我的解决方案是:

服务器B(不是已启动会话的客户端!)在服务器A上调用PHP文件。在B通过一些安全检查后,A应该使用file_puts_content为此cookie文件写入一个新值。注意,因为编写的服务器B还没有启动会话所以我认为我不能简单地做到

session_start();
$_SESSION['myval'] = "new val";

因此我有以下问题:

  1. 是否有更简单的(本机会话处理)方式而不是file_puts ...将值写入cookie文件,如:

    write $_SESSION['myval'] = "new val" to
    sess_489b9515146e7390ac03b5dabf36b70e
    
  2. 会话Dir var / lib / php5有chmod 773,要在其中编写和搜索我必须将权限更改为777(urrgh)。我如何保留773但是可以​​用于php

  3. 如果我打开一个cookie文件,其值如下所示:place | s:6:“Muster”;什么| s:6:是什么意思?
  4. 亲切的问候,

1 个答案:

答案 0 :(得分:0)

  1. 您应该使用像MySQL这样的数据库来存储您的会话,然后将所有会话调用抽象到该数据库中。

  2. 见1.

  3. 这就是将PHP类型序列化为字符串的方式。在这种情况下s:6:“Muster”是一个字符串6个字符长,恰好是“Muster”。