SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo失败:名称或服务未知
是一个常见的PHP错误,通常发生在尝试连接到MySQL数据库时。这个错误表明PHP无法解析数据库服务器的主机名。
config.php
或 .env
)中的数据库主机名是否正确。/etc/hosts
文件(Linux/macOS)或 C:\Windows\System32\drivers\etc\hosts
文件(Windows),确保没有错误的条目。iptables
或 ufw
来检查和配置防火墙规则。/etc/hosts
或 C:\Windows\System32\drivers\etc\hosts
文件中没有错误的条目。假设你有一个PHP配置文件 config.php
,其中包含数据库连接信息:
<?php
$db_host = 'your_database_host';
$db_user = 'your_database_user';
$db_pass = 'your_database_password';
$db_name = 'your_database_name';
$conn = new mysqli($db_host, $db_user, $db_pass, $db_name);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
?>
如果 your_database_host
无法解析,可以尝试将其替换为IP地址:
$db_host = '192.168.1.100';
通过以上步骤,你应该能够解决 SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo失败:名称或服务未知
错误。
领取专属 10元无门槛券
手把手带您无忧上云