对于我的生活,我无法让这个东西工作。我正在运行一个 apache 服务器,但我的本地站点存储在/www/Matthew/wwwroot/ 中,我使用 http://Matthew.dev 在浏览器中访问它们。
MySQL在名为"Matthew.dev"的服务器上运行,名为"sec_user"的用户具有"Matthew.dev"主机。
但是,当我尝试使用这些凭据连接到我的数据库时,我的错误表明 localhost 正在从某个地方发挥作用,我不知道为什么。
这是我的 psl-config.php:
<?php
define("HOST", "Matthew.dev");
define("USER", "sec_user");
define("PASSWORD", "vmWmtRhaYbGAw6US");
define("DATABASE", "lets_make_pi");
define("CAN_REGESTER", "any");
define("DEFAULT_ROLE", "member");
define("SECURE", FALSE);
?>
这是我db_connect.php:
<?php
include_once 'psl-config.php';
$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
if ($mysqli->connect_errno)
{
echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
}
echo $mysqli->host_info . "'n";
?>
错误:
警告:mysqli::mysqli():(HY000/1045):用户"sec_user"@'localhost"(使用密码:YES)在第4行的/www/sites/Matthew/wwwroot/LetsMakePi/include/db_connect.php中被拒绝访问无法连接到 MySQL:(1045) 用户"sec_user"@"本地主机"的访问被拒绝(使用密码:是)警告:main():无法在第 9 行的/www/sites/Matthew/wwwroot/LetsMakePi/include/db_connect.php 中获取 mysqli
提前谢谢。
它正在尝试连接到本地主机。
(编辑:也许更重要的是,它试图从本地主机连接。
域名 Matthew.dev 该主机上解析为什么? (我见过很多/etc/hosts,其中本地机器的 fqdn 与 127.0.0.1(又名本地主机)相关联。
就此而言,为什么不使用本地主机? 这是同一台机器,不是吗? 只需为sec_user@localhost
分配与sec_user@Matthew.dev
相同的权限即可。