PHP 8.0.6 Released!


(PHP 4, PHP 5, PHP 7, PHP 8)

session_save_pathObtém e/ou define o caminho para armazenamento da sessão atual


session_save_path ( string $path = ? ) : string

session_save_path() retorna o caminho do diretório atual utilizado para salvar os dados de sessão.



Caminho dos dados de sessão. Se informado, o caminho onde os dados são salvos será alterado. session_save_path() precisa ser chamada antes de session_start() para isto.


Em alguns sistemas operacionais, talvez você queira especificar um caminho em um sistema de arquivos (filesystem) que possa manuzear grande quantidade de pequenos arquivos eficientemente. Por exemplo, no Linux, reiserfs pode ter performance melhor do que ext2fs.

Valor Retornado

Retorna o caminho atual do diretório usado para o armazenamento de dados.

Veja Também

add a note add a note

User Contributed Notes 5 notes

mdibbets at outlook dot nospam
7 years ago
I made a folder next to the public html folder and placed these lines at the very first point in index.php

Location of session folder:


location of index.php


What I placed in index.php at line 0:

('session.save_path',realpath(dirname($_SERVER['DOCUMENT_ROOT']) . '/../session'));

This is the only solution that worked for me. Hope this helps someone.
alvaro at demogracia dot com
10 years ago
Debian does not use the default garbage collector for sessions. Instead, it sets session.gc_probability to zero and it runs a cron job to clean up old session data in the default directory.

As a result, if your site sets a custom location with session_save_path() you also need to set a value for session.gc_probability, e.g.:

ini_set('session.gc_probability', 1);

Otherwise, old files in '/home/' will never get removed!
ohcc at 163 dot com
3 years ago
If session.save_handler is set to files, on systems that have maximum path length limitations, when the session data file's path is too long, php may get you an error like "No such file or directory" and fails to start session, although the session-saving folder really exists on the disk.

You should:

1. Keep the session-saving folder's absolute path not too long
2. If you're with PHP 7.1+, don't set session.sid_length to a number too great, such as 255

I once got stuck with this problem on Windows and wasted hours to solve it.
sampathperera at hotmail dot com - Sri Lanka
13 years ago
Session on clustered web servers !

We had problem in PHP session handling with 2 web server cluster. Problem was one servers session data was not available in other server.

So I made a simple configuration in both server php.ini file. Changed session.save_path default value to shared folder on both servers (/mnt/session/).

It works for me. :)
hrushiemail at gmail dot com
2 years ago
('session.save_path',realpath(dirname($_SERVER['DOCUMENT_ROOT']) . '/tmp'));
ini_set('session.gc_probability', 1);


(for using above code create a tmp folder/directory in your directory)
To Top