ошибка cURL: не удалось разрешить хост - PullRequest
1 голос
/ 06 декабря 2010

Похожий вопрос был опубликован на, но я не мог найти решение там Ошибка скручивания Не удалось разрешить хост: сохраненный_порт.xml; Нет записи данных запрошенного типа "

<?php

$url="http://en.wikipedia.org/wiki/Pakistan";
 $ch = curl_init(urlencode($url));
  echo $ch;
  // used to spoof that coming from a real browser so we don't get blocked by some sites
  $useragent="Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1";

  curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
  curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 4);
  curl_setopt($ch, CURLOPT_TIMEOUT, 8);
  curl_setopt($ch, CURLOPT_LOW_SPEED_TIME, 10);
  curl_setopt($ch, CURLOPT_HEADER, 0);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

  $content = curl_exec($ch);



  $info = curl_getinfo($ch);

if ($content === false || $info['http_code'] != 200) {
  $content = "No cURL data returned for $url [". $info['http_code']. "]";
  if (curl_error($ch))
    $content .= "\n". curl_error($ch);
  }
else {
  // 'OK' status; format $output data if necessary here:
  echo "...";
}
  echo $content;
  curl_close($ch);
?>

когда я вставляю тот же адрес в браузер, я могу получить доступ к веб-странице. но когда я запускаю этот скрипт, я получаю сообщение об ошибке. Кто-нибудь может мне помочь, пожалуйста. Спасибо

Ответы [ 4 ]

3 голосов
/ 06 декабря 2010

удалить urlencode($url) должно быть:

 $ch = curl_init($url);
3 голосов
/ 06 декабря 2010

Удалить вызов urlencode.

1 голос
/ 06 декабря 2010
$ch = curl_init($url);

вместо

$ch = curl_init(urlencode($url));
1 голос
/ 06 декабря 2010

Хорошо.

Если вы удалите urlencode() с созданием экземпляра $ch -var, все будет хорошо. urlencode() здесь определенно не так.

Хорошо:

 $ch = curl_init($url);

Bad:

 $ch = curl_init(urlencode($url));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...