Как считать html код интернет-страницы работая дома на LOCALHOSTe (или в Денвере)

Alexxx_2

Новичок
Как считать html код интернет-страницы работая дома на LOCALHOSTe (или в Денвере)

Пишу строчку

<? echo file_get_contents('http://ya.ru'); ?>

и мне выводит ошибку Warning: file_get_contents(http://ya.ru): failed to open stream: Bad file descriptor in z:\home\localhost\www\123.php on line 1

если же пишу echo file_get_contents('http://localhost'); то все работает.
 

D4RK 4NG3L

Новичок
Проверь директиву allow_url_fopen в php.ini, если она Off то тебе и нельзя этим пользоваться, а если выставлена как On, тогда хз. У меня всё работает как надо...
 

Alexxx_2

Новичок
allow_url_fopen = On
у меня тоже так стоит но не в этом похоже дело
 

Alexandre

PHPПенсионер
Как считать html код интернет-страницы работая дома
а доступ к яндексу есть? может сети нет??
скорее всего дело в фаерволе
berkut какой дома может быть фаерволе под денвером??
если конечно, человек прокси сервер не поставил. Да и все равно, прокси, должен дать доступ по 80 порту.

-~{}~ 02.11.05 18:35:

Alexxx_2 попробуй fopen
не получится, тогда fsockopen
PHP:
$fp = fsockopen("www.example.com", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    $out = "GET / HTTP/1.1\r\n";
    $out .= "Host: www.example.com\r\n";
    $out .= "Connection: Close\r\n\r\n";

    fwrite($fp, $out);
    while (!feof($fp)) {
        echo fgets($fp, 128);
    }
    fclose($fp);
}
 

berkut

Новичок
>>> Alexandre какой дома может быть фаерволе под денвером??
если конечно, человек прокси сервер не поставил. Да и все равно, прокси, должен дать доступ по 80 порту.

А почему-бы и нет????? А фаервол, помимо полного перекрытия определённых портов может открывать доступ к опред. порту только определённым приложения, в которые апач/пхп может и не входить
 

Alexxx_2

Новичок
У меня на работе это не получалось, дома - все как по маслу, значит либо прокси либо админ(((
Но интересна одна вещь - просто загрузка странички занимает чуть больше секунды, а file_get_contents выполняется никак не меньше 5-ти...
 

sakon

П..и.н..ок
Я тоже сижу за проксей.
В этой строке
$fp = fsockopen("http://'адрес прокси'", 80, $errno, $errstr, 30);
Все нормально работает
 

SiMM

Новичок
> $fp = fsockopen("http://'адрес прокси'", 80, $errno, $errstr, 30);
> Все нормально работает
Врёшь ;) Не то, что у тебя за прокси не работает, а то, какой у тебя первый параметр fsockopen'а ;)
 

sakon

П..и.н..ок
SiMM
Хех.
$fp = fsockopen("192.168.10.1", 8181, $errno, $errstr, 30);
Был неправ...
 
Сверху