Toto je možný problém, když cesta k uložení php_session není správně nastavena:
Adresář pro ukládání session neexistuje nebo php nemá dostatečná práva k zápisu do něj.
Chcete-li definovat adresář php_session, jednoduše přidejte do souboru php.ini následující řádek:
session.save_path="/tmp/php_session/"
A udělte práva zápisu serveru http.
obvykle http server běží jako uživatelský démon ve skupinovém démonu. Pokud ano, následující příkazy to udělají:
chown -R :daemon /tmp/php_session
chmod -R g+wr /tmp/php_session
service httpd restart
Přihlášení se nezdaří, pokud složka relace není zapisovatelná. Chcete-li to zkontrolovat, vytvořte soubor PHP ve svém webovém adresáři pomocí:
<?php
$sessionPath = 'undefined';
if (!($sessionPath = ini_get('session.save_path'))) {
$sessionPath = isset($_ENV['TMP']) ? $_ENV['TMP'] : sys_get_temp_dir();
}
if (!is_writeable($sessionPath)) {
echo 'Session directory "'. $sessionPath . '"" is not writeable';
} else {
echo 'Session directory: "' . $sessionPath . '" is writeable';
}
Pokud do složky relace nelze zapisovat, udělejte to buď
sudo setfacl -R -m u:www-data:rwx <session directory>
nebo chmod 777 sudo setfacl -R -m u:www-data:rwx <session directory>
-
Jsem pozdě na hru, ale na Amazon linux AMI jsem se nemohl přihlásit do phpmyadmin ... jen neustále obnovoval přihlašovací obrazovku bez chyb.
Opravil jsem níže uvedeným příkazem
sudo chmod -R 755 /var/lib/php/session