phpMyAdmin session_start() Permission denied jest jednym z najczęstszych błędów, które pojawiają się w tym menedżerze bazy danych MySQL.
Błąd pojawia się przy próbie logowania do phpMyAdmin, pojawiający się wielokrotnie po aktualizacjach pakietów PHP.

Error during session start; please check your PHP and/or webserver log file and configure your PHP installation properly.
Also ensure that cookies are enabled in your browser.
session_start(): open(SESSION_FILE, O_RDWR) failed: Permission denied (13)
session_start(): Failed to read session data: files (path: /var/lib/php/session)
Na szczęście ten błąd, który pojawia się podczas logowania do phpMyAdmin, ma bardzo proste rozwiązanie. Ale do tego potrzebny jest dostęp do serwera hosta.
Fix phpMyAdmin session_start() Permission denied
Błąd jest generowany przez brak uprawnień do zapisu w bloku katalogów z /var/lib/php/session
. Mogą być dwie wady:
1. chmod
brak uprawnień do zapisu w /var/lib/php/session
2. Katalogi z /var/lib/php/session
należeć do innego owner:group
, niż ten obsługujący procesy PHP/webowe.
Na przykład, jeśli masz serwer WWW z NGINX, a skrypty phpMyAdmin są uruchamiane przez użytkownika „nginx
", możliwe jest, że jeden podąża za jednym update PHP, katalogi sesji należy przekazać pod user: apache
. Z tego powodu nie będzie uprawnień do zapisu sesji PHP.
Aby rozwiązać ten błąd phpMyAdmin, wykonaj poniższe czynności:
1. Zakładając, że phpMyAdmin jest uruchamiany przez użytkownika”nginx
", wykonaj polecenie:
ls -all /var/lib/php/
To polecenie wyświetli listę katalogów w PHP, wraz z informacjami o właścicielu i grupie.
2. Ustaw uprawnienia do zapisu dla użytkownika „nginx” w /var/lib/php/
.
chown -R root:nginx /var/lib/php/

Po tym kroku odśwież stronę logowania w phpMyAdmin. Wprowadź użytkownika bazy danych, z którym chcesz się połączyć, oraz hasło. Wszystko powinno działać bez problemów. Zostaw komentarz poniżej, jeśli potrzebujesz pomocy.