The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"получаем файл через прокси"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы WEB технологии (Public)
Изначальное сообщение [Проследить за развитием треда]

"получаем файл через прокси"  
Сообщение от GHopper email(ok) on 19-Мрт-07, 10:36 
Здравствуйте!
Веб-сервер стоит за проксей. Нужно с сервера иметь доступ к ресурсам сети.

<?php
$proxy_url = "http://www.ya.ru"; //хочу получить текст этой страници
$proxy_name = 'STARGATE'; //прокси
$proxy_port = 80; //порт
$proxy_cont = '';

$fp = fsockopen($proxy_name, $proxy_port, $errno, $errstr, 30);
if (!$fp) {
  echo "$errstr ($errno)<br>\n";
} else {
  fputs ($fp, "GET $proxy_url HTTP/1.0\r\nHost: $proxy_name\r\n\r\n");
  echo fgets ($fp, 256);
  fclose ($fp);
}
?>

выдает:

HTTP/1.0 404 Object Not Found (The system cannot find the path specified. )

Чего делать-то?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "получаем файл через прокси"  
Сообщение от domas email(ok) on 20-Мрт-07, 16:17 
Держи рабочий пример.

<?
function proxy_url($proxy_url)
{
   $proxy_name = 'proxy.local.net';
   $proxy_port = 3128;
   $proxy_cont='';
   $proxy_fp = fsockopen($proxy_name, $proxy_port);
   if (!$proxy_fp) { return false; }
   fputs($proxy_fp, "GET $proxy_url HTTP/1.0\r\n\n");
   while(  !feof($proxy_fp)  )     {  $proxy_cont .= fread($proxy_fp,4096);  }
   fclose($proxy_fp);
   $proxy_cont = substr( $proxy_cont, strpos($proxy_cont,"\r\n\r\n")+4 );
   return $proxy_cont;
}

$url='http://www.ya.ru';
print proxy_url($url);
?>

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "получаем файл через прокси"  
Сообщение от GHopper email(ok) on 21-Мрт-07, 05:29 
Чут-чуть модифицировал функцию:

function proxy_url($proxy_url)
{
   $proxy_cont='';
   $proxy_name = 'STARGATE';
   $proxy_port = 80;
   $proxy_fp = fsockopen($proxy_name, $proxy_port, $errno, $errstr, 30);
   if (!$proxy_fp) {
    echo "$errstr ($errno)<br>\n";
    return false;
   }
   fputs($proxy_fp, "GET $proxy_url HTTP/1.0\r\n\n");
   while(  !feof($proxy_fp)  )     {  $proxy_cont .= fread($proxy_fp,4096);  }
   fclose($proxy_fp);
   $proxy_cont = substr( $proxy_cont, strpos($proxy_cont,"\r\n\r\n")+4 );
   return $proxy_cont;
}

$url='http://www.ya.ru';
print(proxy_url($url));

В ответ получил:
Попытка установить соединение была безуспешной, т.к. от другого компьютера за требуемое время не получен нужный отклик, или было разорвано уже установленное соединение из-за неверного отклика уже подключенного компьютера. (10060)

Идти админа пинать или моя проблема?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "получаем файл через прокси"  
Сообщение от domas email(ok) on 21-Мрт-07, 08:20 
>Идти админа пинать или моя проблема?
Незнаю админа или не админа, но скрипт(твой модифицированный) рабочий -- только что проверил.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "получаем файл через прокси"  
Сообщение от Aess email(ok) on 22-Мрт-07, 13:55 
>>Идти админа пинать или моя проблема?
>Незнаю админа или не админа, но скрипт(твой модифицированный) рабочий -- только что
>проверил.

Попинай админа пущай те проброску кинет натовскую на ентот сервак.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру