版本/程序:
xenforo 1.2.9, phpmyadmin 4.x, php 5.6.4, MySQL 8.0.32 IIS 10, Windows Server 2019
我正在尝试托管一个本地服务器,用于修补我拥有的旧电脑。该服务器将托管 XenForo 安装。但是,我的 xenforo 是 1.2.9,已经过时了,需要 php5.6.4。因为我使用的是较旧的 php 版本,所以我还需要 phpmyadmin 4.x。
我已经安装完了所有这些。我知道使用最新的软件会更容易包括 xenforo,但我在 2013 年购买了此许可证,想在花钱之前对其进行一些调整。我想免费设置它,然后决定是否要升级所有内容。Xenforo 目录工作正常,因为我看到“开始安装”,但直到我访问我的数据库后才能开始。
我的问题是,当我访问本地主机/phpmyadmin/index.php,我看到了登录门户。但是,当我输入我的凭据(我知道它们是正确的)时,我收到此错误:
mysqli_real_connect(): The server requested authentication method unknown to the client [caching_sha2_password]
mysqli_real_connect(): (HY000/2054): The server requested authentication method unknown to the client
我一直在使用 ChatGPT 来帮助解决此错误,但无济于事。它建议将以下代码添加到配置.ini.php文件:
$cfg['blowfish_secret'] = 'S&#QX3LqK6sMtp$PWV?lLfJv0<u4moPe'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
//$cfg['blowfish_secret'] = ')6U}lm)*ZRK|Q82zae=Lv\^FbVVIWp{m';
/**
* Servers configuration
*/
$i = 0;
/**
* First server
*/
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
//$cfg['Servers'][$i]['auth_type'] = 'config';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;
//$cfg['Servers'][$i]['user'] = 'xenforo';
//$cfg['Servers'][$i]['user'] = 'root';
//$cfg['Servers'][$i]['password'] = '{mypass}';
我想知道这是否是我的 config.ini.php 文件的问题。这是设置:(我将在部署之前更改 blowfish 身份验证)
/**
* This is needed for cookie based authentication to encrypt password in
* cookie. Needs to be 32 chars long.
*/
$cfg['blowfish_secret'] = 'S&#QX3LqK6sMtp$PWV?;.fJv0<u4mo[e'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
/**
* Servers configuration
*/
$i = 0;
/**
* First server
*/
$i++;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
//$cfg['Servers'][$i]['auth_type'] = 'config';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;
//$cfg['Servers'][$i]['user'] = 'root';
//$cfg['Servers'][$i]['password'] = '{mypassword}';
ChatGPT 还说要将以下代码添加到 [连接到 mysql 数据库] php 文件中,但我不确定将其添加到哪里:
<?php
// Database configuration
define('DB_HOST', 'localhost');
define('DB_USER', 'user');
define('DB_PASS', 'password');
define('DB_NAME', 'database');
// Create a database connection
$link = mysqli_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
// Set the character set
mysqli_set_charset($link, 'utf8');
请有人帮忙。我完全不知所措。如果您需要更多信息,请告诉我,我会编辑此问题。
我努力了:
- 禁用 blowfish 并尝试使用 conf 文件(错误)
- mysql_connect():服务器请求的身份验证方法对于客户端 [mysql_old_password] 未知