We are migrating a PHP website from an old host to a container. The old code runs on VM directly, now we built a container that facilitate the PHP website. Both old and new PHP website run on top of apache httpd with php version 5.4.16.
However, there's a feature of this website that saves user session under /var/lib/php/session
that does not work in our new, containerized version. The directory seems to always be empty even if there are active sessions. We have checked the following:
session
configuration seems identical between the old and new site (pasting the config below)apache
user is the owner of /var/lib/php/session
directoryI am not familiar with PHP and don't know how I could debug this further, just checking if I can get some help on this.
Our configuration
Session Support: enabled
Registered save handlers: files user
Registered serializer handlers: php php_binary
session.auto_start: Off
session.cache_expire: 180
session.cache_limiter: nocache
session.cookie_domainno value
session.cookie_httponly: Off
session.cookie_lifetime: 0
session.cookie_path: /
session.cookie_secure: Off
session.entropy_file: /dev/urandom
session.entropy_length: 32
session.gc_divisor: 1000
session.gc_maxlifetime: 1440
session.gc_probability: 1
session.hash_bits_per_character: 5
session.hash_function: 0
session.name: PHPSESSID
session.referer_check: no value
session.save_handler: files
session.save_path: /var/lib/php/session
session.serialize_handler: php
session.upload_progress.cleanup: On
session.upload_progress.enabled: On
session.upload_progress.freq: 1%
session.upload_progress.min_freq: 1
session.upload_progress.name: PHP_SESSION_UPLOAD_PROGRESS
session.upload_progress.prefix: upload_progress_
session.use_cookies: On
session.use_only_cookies: On
session.use_trans_sid: 0
Turns out our script messed around the permission of /var/lib/php/session
after having the container run as root it straighten things out