Хосту не разрешено подключаться к этому серверу в 000webhost

Резюме

Я видел на сайте, где пользователь упомянул, что нужно подождать 1 день, прежде чем хост начнет действовать. Но после 1 дня я все еще получаю ошибку ниже:

Предупреждение: mysqli_connect() [function.mysqli-connect]: (HY000/1130): узлу '10.1.1.25'не разрешено подключаться к этому серверу MySQL в /home/a123456/public_html/index.php в строке 2

Детальное объяснение

Я свободный пользователь, и я создал базу данных в 000webhost, но я не могу использовать ее после завершения установки. Я не подключен удаленно. Я чувствую, что правильно поняла руководство, но все еще не в состоянии добиться цели. Мои данные следующие:

  • хост: mysql5.000webhost.com
  • имя пользователя: a123456_uname
  • имя базы данных: a123456_dbname
  • пароль: пароль1

Я использую mysqli, чтобы установить соединение. Вот мой код:

<?php
$link = mysqli_connect("mysql5.000webhost.com", "a123456_uname", "password1", "a123456_dbname");

if (!$link) {
    echo "Error: Unable to connect to MySQL." . PHP_EOL;
    echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
    echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
    exit;
}

echo "Success: A proper connection to MySQL was made! The my_db database is great." . PHP_EOL;
echo "Host information: " . mysqli_get_host_info($link) . PHP_EOL;

mysqli_close($link);
?>

2 ответа

Решение

MySQL предоставляет пользователям права на подключение, но может ограничивать это подключение определенными узлами или диапазонами сети.

По аналогии: это как если бы я позволил другу позвонить на мой телефон и снять блокировку телефона, но только если он позвонит мне со своего номера.

Из полученной ошибки ясно видно, что хост, с которого вы запускаете свой PHP-скрипт, 10.1.1.25, еще не находится в диапазоне, разрешенном для подключения к серверу MySQL. Либо хостинговой компании требуется более 1 дня для настройки ваших разрешений (что вы ожидаете от бесплатного пользователя?), Либо возникли некоторые недоразумения относительно того, с какого хоста вы собираетесь запускать свои PHP-скрипты.

Вы должны связаться с вашей хостинговой компанией. Они могут выяснить, что происходит в этом конкретном случае. Люди здесь на переполнении стека не могут.

PS: я действительно надеюсь, что вы не просто опубликовали свой пароль MySQL в Интернете.

Существует мгновенное решение этой проблемы. Просто замените имя хоста ("mysql5.000webhost.com") на его IP-адрес. Чтобы узнать IP-адрес, вы можете использовать команду "ping" в DOS. Просто откройте окно CMD и введите "ping mysql5.000webhost.com". IE:

ping mysql5.000webhost.com

Pinging mysql5.000webhost.com [10.1.1.105] с 32 байтами данных: истекло время ожидания запроса. Истекло время запроса. Истекло время запроса. Истекло время запроса.

Статистика пинга для 10.1.1.105: Пакеты: отправлено = 4, получено = 0, потеряно = 4 (потеря 100%),

>

В этом случае IP-адрес: 10.1.1.105. Просто замените его, и оно будет работать.

Другие вопросы по тегам