我安装了最新版本的 MySQL、IIS(在 Windows 10 上)和 PHPMyAdmin。
但是 PHPMyAdmin 4.6.4 返回错误:
生成随机 CSRF 令牌失败!
如果我使用 PHPMyAdmin 4.0.4.1,我可以连接到我的本地 mysql 服务器。
如何在 PHPMyAdmin 4.6.4(在 Windows IIS 上)中解决此问题?
修改 php.ini :
session.save_path = "c:\session"
向用户授予修改
c:\session
权限
运行命令:
iisreset
royhutw 是对的。
默认的session.save_path是C:\Windows\Temp。如果您收到此错误,IIS 可能没有权限在那里创建会话文件。
您唯一需要做的就是授予“IUSR”对此文件夹的修改权限并重新加载您的 phpMyAdmin 页面。
我会写在这里,也许对某人有用。 我有一个类似的问题,但在 debian 9 上使用 mysql 8,有时我会收到错误标记。 这种愚蠢的解决方案对我有用: 我更改了 php.ini 中的行:
session.save_path = "/ var / lib / php / sessions"
无论做什么,稍后我都会跑:
sudo service apache2 restart
我再次将上面的交换行更改为正确的行并再次重置,我可以登录到 phpmyadmin ...
我有同样的问题,并且为此打开了很多线程,但答案都不满意。我想添加我如何解决问题,以便人们知道在遇到同样问题时该怎么做。至于我在新的 Windows Server 2022 安装上的经验,我遇到了几个相互叠加的错误。
首先检查您的.ini 配置文件是否已加载。运行CMD控制台,然后输入
php --ini
验证配置文件是否存在。
如果加载了,那么检查session.save_path,上面的答案就是你的解决方案。
但是如果像我一样没有加载(因为我刚刚安装了Windows),那么你可以添加一个新的Windows环境变量。变量名称
PHPRC
并将其指向您的 ini 文件。请注意,这是一个全局文件环境,如果以后更改 PHP 版本,则需要调整此设置。
为了确保
phpinfo()
在index.php上并检查phpinfo页面的“已加载配置文件”行以验证更改。
正如上面的答案,也看看这个:
希望对大家有帮助。
在网页浏览器中,手动删除“phpMyAdmin”条目,即可轻松解决。对我来说它有效!