"Error: Token Mismatch" After adding a 2nd server to phpMyAdmin
"Error: Token Mismatch" After adding a 2nd server to phpMyAdmin
我已经搜索并尝试解决这个问题大约 3 周了。我很难过。请帮忙!
我通过将以下行添加到安装目录中 "config.inc.php" 文件的末尾来向 phpMyAdmin 添加第二个服务器。
$i++;
$cfg['Servers'][$i]['verbose'] = '<SERVER 2 NAME REDACTED>';
$cfg['Servers'][$i]['host'] = '<SERVER 2 ADDRESS REDACTED>.rds.amazonaws.com';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['AllowNoPassword'] = false;
$cfg['Servers'][$i]['ssl'] = false;
添加此服务器后,当 运行 某些 SQL 查询或登录到服务器 #2 时执行某些操作时,我们开始随机获取 "Error: Token Mismatch" 弹出窗口。我们设置了几年的第一台服务器上从来没有得到它,我将所有服务器配置设置与第一台服务器的配置设置相匹配。使用 SQL 查询无法 100% 重现该问题,但当我尝试通过 phpMyAdmin 的用户创建页面将用户添加到数据库时,它似乎可以 100% 重现。
步数:
- 登录(select 服务器 #2 在 "Server Choice" 下拉菜单中)
- 单击页面顶部的 "users" 选项卡
- 点击"add user"link
- 填写必填字段并单击 "go"
此时我总是得到 "Error: Token Mismatch" 弹出窗口。
到目前为止我尝试过的事情:
- 清除缓存/cookie(我每次更改设置时都这样做)
- 使用不同的浏览器(尝试过 Chrome、Firefox 和 Safari)
- 将 php.ini 文件中的“;session.save_path”变量更改为“/tmp”
- 在会话保存目录
上执行 "chmod 1733"
- 确保有免费 space 可用(19GB 免费)
经过这一切,我们仍然得到错误。
软件:
PHP: 5.3.29
阿帕奇:2.2.23(亚马逊)
SQL 类型:10.1.23-MariaDB
数据库客户端版本:libmysql - 5.5.24
PHP 扩展:mysqli
phpMyAdmin:4.2.2
硬件:
phpMyadmin 服务器硬件:Amazon EC2 m3.large
SQL 数据库服务器硬件:db.m4.2xlarge
非常感谢任何有关去处或尝试的建议。
引起我注意的一件事是你提到了 ;session.save_path
变量;它前面的分号是注释,因此要识别该指令,您必须删除分号。检查 phpinfo.php 的输出以验证更改是否成功。
除此之外,很难猜测。您使用的是旧的 PHP 和旧的 phpMyAdmin 版本,所以我并不是说升级会或不会解决问题,但您确实应该升级。
一种解决方法是安装两个 phpMyAdmin;您可以将 phpMyAdmin 放在两个不同的文件夹中,每个文件夹指向不同的 MySQL 服务器。听起来它在一台服务器上运行良好,所以如果您这样做,每个实例将只有一台服务器,希望您不会遇到问题。
我已经搜索并尝试解决这个问题大约 3 周了。我很难过。请帮忙!
我通过将以下行添加到安装目录中 "config.inc.php" 文件的末尾来向 phpMyAdmin 添加第二个服务器。
$i++;
$cfg['Servers'][$i]['verbose'] = '<SERVER 2 NAME REDACTED>';
$cfg['Servers'][$i]['host'] = '<SERVER 2 ADDRESS REDACTED>.rds.amazonaws.com';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['AllowNoPassword'] = false;
$cfg['Servers'][$i]['ssl'] = false;
添加此服务器后,当 运行 某些 SQL 查询或登录到服务器 #2 时执行某些操作时,我们开始随机获取 "Error: Token Mismatch" 弹出窗口。我们设置了几年的第一台服务器上从来没有得到它,我将所有服务器配置设置与第一台服务器的配置设置相匹配。使用 SQL 查询无法 100% 重现该问题,但当我尝试通过 phpMyAdmin 的用户创建页面将用户添加到数据库时,它似乎可以 100% 重现。
步数:
- 登录(select 服务器 #2 在 "Server Choice" 下拉菜单中)
- 单击页面顶部的 "users" 选项卡
- 点击"add user"link
- 填写必填字段并单击 "go"
此时我总是得到 "Error: Token Mismatch" 弹出窗口。
到目前为止我尝试过的事情:
- 清除缓存/cookie(我每次更改设置时都这样做)
- 使用不同的浏览器(尝试过 Chrome、Firefox 和 Safari)
- 将 php.ini 文件中的“;session.save_path”变量更改为“/tmp”
- 在会话保存目录 上执行 "chmod 1733"
- 确保有免费 space 可用(19GB 免费)
经过这一切,我们仍然得到错误。
软件:
PHP: 5.3.29
阿帕奇:2.2.23(亚马逊)
SQL 类型:10.1.23-MariaDB
数据库客户端版本:libmysql - 5.5.24
PHP 扩展:mysqli
phpMyAdmin:4.2.2
硬件:
phpMyadmin 服务器硬件:Amazon EC2 m3.large
SQL 数据库服务器硬件:db.m4.2xlarge
非常感谢任何有关去处或尝试的建议。
引起我注意的一件事是你提到了 ;session.save_path
变量;它前面的分号是注释,因此要识别该指令,您必须删除分号。检查 phpinfo.php 的输出以验证更改是否成功。
除此之外,很难猜测。您使用的是旧的 PHP 和旧的 phpMyAdmin 版本,所以我并不是说升级会或不会解决问题,但您确实应该升级。
一种解决方法是安装两个 phpMyAdmin;您可以将 phpMyAdmin 放在两个不同的文件夹中,每个文件夹指向不同的 MySQL 服务器。听起来它在一台服务器上运行良好,所以如果您这样做,每个实例将只有一台服务器,希望您不会遇到问题。