Я установил phpmyadmin
на моем выделенном сервере с Nginx
и MariaDB
под Centos 6. я могу войти в mariaDB cli с root
пользователь ошибается, но я не могу войти через phpmyadmin
. он показывает мне первую страницу входа в phpmyadmin
и когда я ввожу пользователя и прохожу, страница обновляется, но ничего не происходит, только токены добавляются в адрес. Я использовал статические ссылки для создания ссылки между папкой phpmyadmin и корневым каталогом nginx. Я должен сказать, что другие страницы php загружаются безупречно, однако любая помощь будет признательна.
Ответы мне не подошли. однако я решил это по-другому, и я пишу решение здесь для других: открыть phpmyadmin
конфигурация в редакторе. в centOS
я сделал это :
нано /etc/phpMyAdmin/config.inc.php
затем найдите эту строку:
...
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
...
и измените его на http
:
...
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'http';
...
затем перепроверьте свой phpmyadmin
URL на вашем сайте
Проработав несколько часов с той же проблемой, я обнаружил, что session.save_path очень важен, поэтому я предпринял несколько шагов, чтобы проверить его в пустом файле PHP.
1) Получите текущее значение из ini с помощью
var_dump( ini_get('session.save_path') );
.
Результат для меня был
string(20) "/var/lib/php/session"
2) Теперь я хотел узнать, может ли мой php записывать в эту папку, поэтому я выбрал
var_dump( is_writable( ini_get('session.save_path') ) );
Результат оказался ложным. Это означает, что пользователь, который контролирует мой php-fpm, не может записать этот каталог.
3) Я подошел к этой папке с
/var/lib/php
проверить его владельца с
ls -all
Результат был
drwxr-xr-x 4 root root 4096 Sep 17 15:21 .
drwxr-xr-x 21 root root 4096 Sep 17 15:48 ..
drwxrwx--- 2 root apache 4096 Sep 3 08:07 session
drwxrwx--- 2 root apache 4096 Sep 3 08:07 wsdlcache
И тут я просто замечаю, что папка моей сессии контролируется Apache. Но на моем сервере нет apache, я использую nginx.
Решение
Сделайте nginx владельцем этой папки
chown nginx session/
Теперь не имеет значения, что auth_type
Пользуюсь, они оба рабочие
Для аутентификации файлов cookie вам потребуются правильные права доступа к каталогу сеанса. Убедитесь, что каталог, определенный в session.save_path
Переменная php доступна для записи для вашего веб-сервера.
Правильно ли установлен PhpAdmin?
Предлагаю переустановить его. Если вы все равно не можете войти в систему, то это первое, что нужно попробовать.
После того, как вы это сделаете, измените права доступа к каталогу phpadmin (ниже - общий www-каталог linux, проверьте и измените Centos, если он другой)
chmod -R 777 /var/www/phpmyadmin
Откройте браузер и запустите Phpadmin, чтобы проверить, можете ли вы войти в систему.
Если у вас возникнут какие-либо ошибки, опубликуйте их в своем вопросе, чтобы посмотреть