dougou6213 2016-02-22 15:07
浏览 41
已采纳

由Memcached处理的PHP会话仍在磁盘上

We have PHP5 FPM set up under Nginx. We use Memcached as our session handler.

session.save_handler=memcached

My expectation is that, without fail (notwithstanding some fatal error like the death of our Memcached server) that all sessions should make it to Memcached and explicitly NOT disk.

However, upon inspecting our application, I've found sessions on Memcached AND in /var/lib/php5/fpm/.

Some troubleshooting:

  1. We are definitely getting new sessions set on Memcached. However, some sessions that I found on disk, don't appear on Memcached
  2. The timestamps on the file based sessions are definitely recent - there are files in the current minute.
  3. Permissions on the files are for the installation user - not root.

Despite having said point 3 above, there are SOME files that have the root user and group ownership. This I find weird. Why would there be sessions owned by root? That would mean that anyone trying to check the file (that has 0600 permissions btw) would fail.

So, I guess my questions amount to:

  1. Is there any scenario in which it is valid that new session files are created on disk despite the fact that we use Memcached?
  2. Any idea why we'd have session files that have a root ownership?

For context: I'm researching very sporadic session expiry issues. After having increased Memcached memory limits and concurrent connections (and that ultimately fixing a large number of the instances) we're still experiencing a small amount of the session expiries. Anyway, that is simply context - might not be important.

  • 写回答

1条回答 默认 最新

  • dongyirong3564 2016-02-22 16:11
    关注

    The session files were created by php-cli started by cron. cli config differs from fpm one and uses default file session handler.

    Edit

    Importantly, the cronjob must either be hitting a piece of code that manually starts the session
    OR
    the configuration directive session.auto_start for PHP5-cli must be set to true

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥50 求恶意流量检测系统搭建教程( C++ python C)
  • ¥15 mmseqs内存报错
  • ¥15 vika文档如何与obsidian同步
  • ¥15 华为手机相册里面的照片能够替换成自己想要的照片吗?
  • ¥15 陆空双模式无人机飞控设置
  • ¥15 sentaurus lithography
  • ¥100 求抖音ck号 或者提ck教程
  • ¥15 关于#linux#的问题:子进程1等待子进程A、B退出后退出(语言-c语言)
  • ¥20 web页面如何打开Outlook 365的全球离线通讯簿功能
  • ¥15 io.jsonwebtoken.security.Keys