Kozack
@Kozack
Thinking about a11y

Как исправить ошибку «failed to open stream: No route to host»?

Пытаюсь с одного своего сайта выполнить простой GET запрос на второй:
file_get_contents('http://91.225.138.253');

Но получаю ошибку:
Warning: file_get_contents(http://91.225.138.253): failed to open stream: No route to host

Ошибка повторяется если обращаться по IP, по домену, на главную или на любую другую страницу.

В phpinfo(); опция allow_url_fopen имеет значение ON

В чем может заключаться проблема? Как её решить?

UPD.

Используя cURL та же проблема:
$curl = curl_init();

  curl_setopt_array($curl, array(
    CURLOPT_URL => "http://91.225.138.253",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_FOLLOWLOCATION => 1,
    CURLOPT_USERAGENT => $_SERVER['HTTP_USER_AGENT'],
  ));

  $response = curl_exec($curl);
  $err = curl_error($curl);

  curl_close($curl);

  if ($err) {
    return "cURL Error #:" . $err;
  } else {
    return $response;
  }

cURL Error #:couldn't connect to host
  • Вопрос задан
  • 596 просмотров
Пригласить эксперта
Ответы на вопрос 1
inoise
@inoise Куратор тега PHP
Solution Architect, AWS Certified, Serverless
Попробуйте использовать curl за место file_get_contents. Узнаете много нового об обращении к этому ресурсу и получите больше контроля над операцией
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы