#codeigniter-3 #remote-server #fsockopen
#codeigniter-3 #удаленный сервер #fsockopen
Вопрос:
Я хотел бы спросить, чего чего-то не хватает или что не так с моим fsockopen() в codeigneter. Я ve been searching for fives days now and I couldn
не могу понять, что не так, поскольку у других, кто получил ту же ошибку, что и у меня, мы находимся по другому сценарию. В то время как они предназначены для отправки электронных писем, я должен получить статус сервера, если он онлайн или оффлайн.
Я создавал веб-шаблон для онлайн-игр, чтобы он мог извлекать / отображать данные с удаленного игрового сервера на веб-хостинг. Мне удалось подключить MSSQL к удаленному серверу, но fsockeopne() не работает.
Helper.php Коды
function getServerConnection($ip, $port) {
$sockres = @fsockopen($ip, $port, $errno, $errstr, 0.01);
if (!$sockres) {
return '<b class="text-danger">OFFLINE</b>';
} else {
@fclose($sockres);
return '<b class="text-success">ONLINE</b>';
}
}
Просмотр Кодов
<p class="m-b-10">
<span class="left">LOGIN: <?php echo getServerConnection($server_settings->server_ip, $server_settings->login_port) ?></span>
<span class="float-right">WORLD: <?php echo getServerConnection($server_settings->server_ip, $server_settings->server_port) ?></span></p>
Var_dum $sockres и ошибка
Обнаружена ошибка PHP Серьезность: Предупреждающее сообщение: fsockopen(): невозможно подключиться к 192.168.1.1:80 (время ожидания соединения истекло) — ПРОСТО ФИКТИВНЫЙ IP. У НЕГО ЕСТЬ РЕАЛЬНОЕ УДАЛЕННОЕ IP-имя ФАЙЛА: helpers/myhelper_helper.php
bool(false) int(110) string(20) «Время ожидания соединения истекло»
Брандмауэр allow_url_fopen = on и удаленного сервера уже настроен
Заранее благодарю вас 🙂 извините за мой английский, я не очень хорошо разбираюсь в этом.
Ответ №1:
Я смог выяснить эту ошибку, потому что я использую неправильный порт. и убедитесь, что вы правильно настроили брандмауэр Windows. И попробуйте использовать этот для проверки порта https://ping.eu/port-chk /