phpMyAdmin 4.6.2 несоответствие токена

Я получаю страшную ошибку «несоответствие токена» на своем phpMyAdmin. Моя инсталляция живет в бродячем / доступном окне, поэтому это чистая система.

Если для auth_type установлено значение «cookie», я просто остаюсь на странице входа в систему, а если установить для него значение «http», я получаю ошибку «несоответствие токена».

phpMyAdmin config.inc.php

$cfg['blowfish_secret'] = '123'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH!
$i = 0;
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'http'; // or cookie
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;

Конфигурация Nginx:

server
{
listen 80 default;
server_name dev.company.local _;

root /var/www/sites/dev.company.local;

access_log /var/log/nginx/dev.company.local-access.log combined;
error_log /var/log/nginx/dev.company.local-error.log notice;
index index.html index.php;

include fastcgi_portal.conf;

location /phpmyadmin/(.*) {
alias /usr/share/phpMyAdmin;
}

}

Я не буду публиковать здесь свой php.ini, так как это такой огромный файл, но настроено несколько параметров.

Вещи, которые я уже проверил:

  • session.gc_maxlifetime = 1440
  • session.save_path = /var/lib/php/session (установить на 777, тоже пробовал /tmp)
  • Mcrypt включен
  • очистка файлов cookie браузера и т. д.
  • подтвердил мои учетные данные MySQL
  • установить правильное время + часовой пояс виртуальной машины

Я нашел сообщения об ошибках, как https://sourceforge.net/p/phpmyadmin/bugs/3893/ но для меня это, похоже, не исправлено 🙂

Другая информация:

  • CentOS release 6.7 (Final)
  • nginx version: nginx/1.0.15
  • PHP 5.6.22 (fpm-fcgi) (built: May 26 2016 15:45:15)

Я пробовал текущую версию phpMyAdmin (4.6.2), предыдущую версию (4.6.1) и долгосрочную версию (4.4.15.6).

Любая помощь будет отличной!

1

Решение

Предполагая, что вы используете Docker в Vagrant, скорее всего, это вызвано https://github.com/phpmyadmin/docker/issues/32.

Это можно исправить, просто потянув более новую версию контейнера :-).

1

Другие решения

я получил именно так та же проблема, что вы описали после усиления безопасности моего Apache.
В моем случае оказалось, что phpMyAdmin сломал:

Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure

После комментирования и перезапуска httpd все снова заработало.

Предположительно, вышеуказанный параметр заголовка предназначен для смягчения большинства распространенных атак межсайтового скриптинга с использованием флагов HttpOnly и Secure в cookie, но похоже, что разработчики PMA не полностью рассмотрели этот сценарий.

0

По вопросам рекламы [email protected]