V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
gouchaoer2
V2EX  ›  PHP

我在 docker 容器里安装了 php7.2-fpm,然后上线网站之后 session 文件随机消失又出现,奇了怪了

  •  
  •   gouchaoer2 · 2020-07-12 13:14:57 +08:00 · 2350 次点击
    这是一个创建于 1597 天前的主题,其中的信息可能已经有所发展或是发生改变。
    类似这种情况: https://stackoverflow.com/questions/41490713/php-session-variables-disappear-and-reappear-randomly

    我的 php.ini 设置如下:

    session.auto_start = 0
    session.gc_probability = 1
    session.gc_divisor = 1000
    session.gc_maxlifetime = 1440

    修改后都重启了 fpm,感觉应该不是 session 回收的问题,因为如果 session 回收了为啥过了一会儿 session 文件又出现了(我打开浏览器 cookie,看 session 的那个 cookie 名判断对应的 session 文件是否存在的),而且 session 文件再次出现的时候里面是有内容的

    为啥呢,想不通
    3 条回复    2020-07-12 14:15:32 +08:00
    gouchaoer2
        1
    gouchaoer2  
    OP
       2020-07-12 13:24:13 +08:00
    我只有一个 docker 容器,session 文件夹的位置被我改到主机 mount 到 docker 容器的目录了,我怀疑是不是这个 mount 目录的问题,先改回默认位置试试
    gouchaoer2
        2
    gouchaoer2  
    OP
       2020-07-12 13:50:51 +08:00
    是这样的,我把 session.name 改了一下,现在我改成默认的 session.name = PHPSESSID,就 OK 了。。。我猜测 php7.2 这个 fpm 在回收的时候认 session.name 有点问题。。。
    gouchaoer2
        3
    gouchaoer2  
    OP
       2020-07-12 14:15:32 +08:00
    确定了,是 php 的 bug
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3578 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 137ms · UTC 05:00 · PVG 13:00 · LAX 21:00 · JFK 00:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.