Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Post запрос через прокси (PHP) (https://forum.antichat.xyz/showthread.php?t=41510)

RaiDeRz 04.06.2007 00:23

Post запрос через прокси (PHP)
 
Как сделать Post запрос через прокси на Php )
Дайте пример

DIAgen 04.06.2007 01:02

Вот держи
PHP код:

$proxy    '127.0.0.1';
$port     80;

 @
$fsock    fsockopen($proxy ,$port,$errnum,$errstr,5);
  if (!
$fsock)   
  die (
"Увы, или прокся дохлая или истекло время ожидания ответа от нее...(((");
  else {
  
$POST_to_GET "to=123&for=123";
$len strlen($POST_GET);
$request  "POST http://site.ru/index.php HTTP/1.0\n";
$request .="Host: site.ru\n";
$request .="Content-Type: application/x-www-form-urlencoded\n";
$request .="Content-Length: $len \r\n\r\n";
$request .=$POST_to_GET."\r\n";
   
fwrite   ($fsock,$request);
$head '';
while(!
feof($fsock))
{
$fgets=fgets($fsock,500); 
if (
$fgets=="\r\n" || $fgets=="\n")
{break;} 
$head.=$fgets;}
$content '';
while(!
feof($fsock))
{
$content .=fread($fsock,2048);}
fclose($fsock); 

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

RaiDeRz 04.06.2007 01:02

А куда тогда вписывать хост и порт куда надо подключиться?

Isis 04.06.2007 01:05

PHP код:

<?
$proxy 
"1.1.1.1"
$port "8080";

$fp fsockopen($proxy$port$errno$errstr30); 
if(
$fp)
{
    
$data        "post=ok";
    
$headers  "POST $path HTTP/1.1\r\n"
    
$headers .= "Host: $hostname\r\n"
    
$headers .= "Content-type: application/x-www-form-urlencoded\r\n";
    
$headers .= "Content-Length: ".strlen($data)."\r\n";
    
$headers .= "Connection: close\r\n\r\n";
     
    
$fw fwrite($fp$headers.$data);
    
fclose($fp);
} else die;
?>


Isis 04.06.2007 01:09

Цитата:

Сообщение от RaiDeRz
А куда тогда вписывать хост и порт куда надо подключиться?

Прокси и порт в $proxy & $port :)
Хост в заголовках передавай "Host: www.bla.ru \r\n"

RaiDeRz 04.06.2007 01:12

А вот как сделать так чтобы через эту проксю можно было подключиться на другой порт не 80 ?

Isis 04.06.2007 01:15

Цитата:

Сообщение от RaiDeRz
А вот как сделать так чтобы через эту проксю можно было подключиться на другой порт не 80 ?

В переменной $port поменять )

Dr.Frank 04.06.2007 17:51

Цитата:

Сообщение от Isis
В переменной $port поменять )

Здесь скорее всего имелось ввиду, чтоб через 80-ый порт проксика подключиться на другой порт(не 80) какого-то ресурса

kys 05.06.2007 14:31

Цитата:

А вот как сделать так чтобы через эту проксю можно было подключиться на другой порт не 80
Так:
POST http://site:port HTTP/1.1
т.е. после названия сайта через двоеточие номер порта

SIBON 06.06.2007 11:34

а как считать ответ сервера на этот запрос?


Время: 23:03