Конфигурация по време на изпълнение

Поведението на тези функции зависи от настройките в php.ini .

Механизмът за съхранение на файлове по подразбиране създава файлове с 600 разрешения. Това може да се промени с незадължителен аргумент MODE: N; MODE;/path, където MODE е осмичното представяне на режима за достъп до файл. Настройката на РЕЖИМ не засяга umask.

Ако зададете стойността на публично четима директория, например/tmp (по подразбиране), други потребители на сървъра ще могат да прихващат потребителската сесия, след като са получили списък с файлове в такава директория.

Когато използвате незадължителен аргумент N на ниво директория, както е описано по-горе, имайте предвид, че използването на стойности, по-високи от 1 или 2, не е валидно за повечето сайтове, тъй като са необходими много голям брой директории: например стойност 3 води до 64 ^ 3 директории във файловата система, които водят до огромни загуби на пространство и inode.

Използвайте N по-голям от 2 само ако сте абсолютно сигурни, че вашият сайт е достатъчно голям, за да го изисква.

Коментирайте: Преди PHP 4.3.6, потребителите на Windows трябваше да променят тази променлива, за да използват механизма на сесията. Трябваше да се посочи правилния път, например този: c:/temp .

session.name низ session.name определя името на сесията, използвано като името на бисквитките. Той може да съдържа само цифри и букви. По подразбиране е PHPSESSID. Вижте също име на сесия (). session.auto_start булева сесия.auto_start определя дали модулът на сесията ще стартира сесията автоматично при стартиране. По подразбиране е 0 (забранено). session.serialize_handler низ session.serialize_handler определя името на манипулатора, който се използва за сериализиране/десериализиране на данни. Поддържат се PHP формат за сериализация (с име php_serialize), PHP вътрешен формат (с име php и php_binary) и WDDX (с име wddx). WDDX е наличен само ако PHP е компилиран с поддръжка на WDDX. php_serialize е на разположение от PHP 5.5.4. php_serialize използва проста функция за сериализация/десериализация вътрешно и няма същите ограничения като php и php_binary. Старите манипулатори на сериализация не могат да съхраняват нито числови, нито низови индекси, съдържащи специални символи (| и!) В $ _SESSION. Използвайте php_serialize, за да заобиколите числови и низови грешки при индекса, когато скриптът завърши. По подразбиране е php. session.gc_probability цяло число session.gc_probability, комбинирано с session.gc_divisor, определя вероятността да се изпълнява функция за събиране на боклук (gc). По подразбиране е 1. Вижте session.gc_divisor за подробности. session.gc_divisor цяло число session.gc_divisor във връзка с session.gc_probability определя вероятността функция за събиране на боклука (gc) да се изпълнява при всяка инициализация на сесия. Вероятността се изчислява като gc_probability/gc_divisor, т.е. 1/100 означава, че функцията gc се изпълнява в един случай на сто или 1% за всяка заявка. session.gc_divisor по подразбиране е 100. session.gc_maxlifetime цяло число session.gc_maxlifetime определя времето в секунди, след което данните ще се считат за боклук и потенциално ще бъдат изтрити. Събирането на боклук може да се случи по време на началото на сесия (в зависимост от стойностите session.gc_probability и session.gc_divisor).

Коментирайте: Ако различните скриптове имат различни стойности session.gc_maxlifetime, но в същото време едни и същи места за съхраняване на данни за сесия, тогава скриптът с минималната стойност ще унищожи всички данни. В този случай използвайте тази директива заедно с session.save_path.

session.referer_check низ session.referer_check съдържа подниз, който може да се използва при проверка на HTTP Referer. Ако референтът е изпратен от клиента и не е намерен подниз, тогава идентификаторът на сесията ще бъде означен като невалиден. По подразбиране е празен низ. session.entropy_file низ session.entropy_file съдържа пътя до ресурса (файла), използван като допълнителен източник на ентропия в процеса на създаване на идентификатора на сесията. Например/dev/random или/dev/urandom, които се предлагат в много Unix системи. Тази функция се поддържа и в Windows от PHP 5.3.3. Посочването на ненулева стойност в session.entropy_length казва на PHP да използва Windows Random API като източник на ентропия.

Коментирайте: Премахнато в PHP 7.1.0. От PHP 5.4.0 session.entropy_file има стойност по подразбиране/dev/urandom или/dev/arandom, ако е налична. В PHP 5.3.0 тази директива е празна по подразбиране.

Коментирайте: Активирането на session.use_strict_mode е задължително за цялостната защита на сесията. Всички сайтове се насърчават да го активират. Вижте примери session_create_id () .

session.use_cookies boolean session.use_cookies определя дали модулът ще използва бисквитки за съхраняване на идентификатора на сесията от страна на клиента. По подразбиране е 1 (разрешено). session.use_only_cookies boolean session.use_only_cookies определя дали модулът ще използва бисквитки само за съхраняване на идентификатора на сесията от страна на клиента. Активирането на тази опция предотвратява атаки с помощта на идентификатора на сесията, намиращ се в URL адреса. Добавено в PHP 4.3.0. По подразбиране е 1 (разрешено) от PHP 5.3.0. session.cookie_lifetime цяло число session.cookie_lifetime указва живота на бисквитките, изпратени до браузъра на клиента, в секунди. Стойност 0 означава, че бисквитките ще бъдат валидни, докато браузърът не бъде затворен. По подразбиране е 0. Вижте също session_get_cookie_params () и session_set_cookie_params () .