用于生成唯一会话序列的Php源代码在哪里?

时间:2014-04-26 14:33:20

标签: php mod-lua

我没有找到任何使用mod_lua的会话处理。 所以我想我必须编写自己的会话处理程序。 注意:这很好,因为Php缺少按值处理超时,它只处理整个会话的超时。

我只是在寻找Php的源代码,它会生成会话的唯一编号,用mod_lua来创建。

我已经下载了整个Php代码源但是......我不知道该去哪里看。

2 个答案:

答案 0 :(得分:1)

为什么不使用r.log_id获取唯一编号? 或类似的东西:

local session_id = r:getcookie("lua_sessionid")
if not session_id then 
    session_id = r:sha1(r.log_id .. r.clock())
    r:setcookie{
        key = "lua_sessionid",
        value = session_id
    }
end

或者,请参阅http://modlua.org/recipes/cookies了解如何使用Cookie和唯一ID。

答案 1 :(得分:0)

用于生成PHP会话ID的代码位于php_session_create_id中,任何人都可以在https://github.com/php/php-src/blob/0021095c40a2c2d3d95398c48ae83a06f1381f71/ext/session/session.c#L284

查看