我在phpMyAdmin上遇到了可怕的「令牌不匹配」錯誤。我的安裝住在一個流浪者/容器中,所以它是一個乾淨的系統。phpMyAdmin 4.6.2令牌不匹配
如果我將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憑證
- 設置VM的正確時間+時區
我發現的bug報告像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)都一樣。
任何幫助將是偉大的!
在PHP/Web服務器日誌中是否有任何錯誤? –
@MichalČihař不,php-fpm和nginx錯誤日誌中都沒有。 – Matthijs
瀏覽器是否接受來自phpMyAdmin的cookie?再次讀取描述符這似乎是問題 - Cookie身份驗證無法存儲憑據,但與http一個你得到令牌不匹配,因爲CSRF令牌存儲在cookie中.... –