X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> Скрипт проверки работоспособности прокси на сервере
alexa
alexa
Topic Starter сообщение 19.12.2008, 20:08; Ответить: alexa
Сообщение #1


Написал PHP скриптик для проверки PROXY на сервере
и получалось так что PROXY не работал в некоторых модулях на сервере которых стоит возможность использования PROXY, локально проверил работает, а на сервере –нет

Всё, Спасибо за внимание! Юзайте ребята на здоровье!


<?php
$list = "61.131.31.1944444444:8080     srty dfth dfg h
82.142.152.444444440:80     dfgh dfg hd
123.130.112.17:8080     dfgh dfg hdf

";

$goodproxylist = '';
    
function pping ($a)
{
    error_reporting(0);
    $z=explode(":", $a);
    $z= $z[0];
    $fo = fsockopen($z, 21, $errno, $errstr, 1);
    if ($fo) $ret = 1;
        else $ret = 0;
    fclose($fo);
    return $ret;
}

foreach (explode ("\n", $list) as $key=>$value) {
    $z ='';
    $z=explode("\t", trim($value));
    $allproxy[] = $z[0];
}


foreach ($allproxy as $key=>$value)
{
    $proxy = $value;
    if(strlen($proxy)<5) continue;
    //if (!pping($value)) continue;

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, 'http://iscience.ru/');
    curl_setopt($ch, CURLOPT_HEADER, 1);

    $headers[] = 'Accept: image/gif, image/x-bitmap, image/jpeg, image/pjpeg';
    $headers[] = 'Connection: Keep-Alive';
    $headers[] = 'Content-type: application/x-www-form-urlencoded;charset=UTF-8';
    $user_agent = 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; Media Center PC 4.0)';
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_USERAGENT, $user_agent);


    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 1);
    curl_setopt($ch, CURLOPT_PROXY, "$proxy");
    curl_setopt($ch,CURLOPT_FAILONERROR,true);

    $data = curl_exec($ch);


    if (curl_error($ch)) {
        print "Curl error #: " . curl_errno($ch) . " - " . curl_error ($ch) . " - exiting.<br>";
    }else {
        echo $proxy . ' - fine<br>';
        $goodproxylist .= $proxy.'<br>';
    }
    curl_close($ch);
    @ob_flush(); flush();
}

echo '<hr>'.$goodproxylist.'<hr>';



?>


Сообщение отредактировал alexa - 20.12.2008, 2:36


--------------------
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Samborsky
Samborsky
сообщение 19.12.2008, 21:18; Ответить: Samborsky
Сообщение #2


if (fsockopen($z, 21, $errno, $errstr, 1)) return 1;


А хендлы кто за тебя закрывать будет?
Сервер быстренько из-за CLOSE_WAIT обвалится


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexa
alexa
Topic Starter сообщение 20.12.2008, 2:36; Ответить: alexa
Сообщение #3


поправил скриптик


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Samborsky
Samborsky
сообщение 20.12.2008, 3:28; Ответить: Samborsky
Сообщение #4


Я бы посоветовал так же в обязательном порядке делать проверки на ошибки.
Вот так должны выглядеть функция проверки прокси. В остальных тоже нужно делать проверки.

function pping($a){

    error_reporting(0);
    
    $ret = 0;
    
    $z = explode(":", $a);

    // Если это прокси, то в $z должно быть 2 элемента. В идеале можно регуляркой проверить что это IP:PORT
    if( 2 == count($z) ){

        $z = $z[0];

        if( $fo = fsockopen($z, 21, $errno, $errstr, 1) ){
            
            $ret = 1;
            fclose($fo);
        }
    }

    return $ret;
}


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexa
alexa
Topic Starter сообщение 20.2.2009, 20:53; Ответить: alexa
Сообщение #5


// Если это прокси, то в $z должно быть 2 элемента. В идеале можно регуляркой проверить что это IP:PORT

товарищ Samborsky, вы глубоко ошибаетесь smile.gif
тут лучший вариант будет intval а потом уже порверка на длину

Сообщение отредактировал alexa - 20.2.2009, 20:54


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
imp
imp
сообщение 23.2.2009, 19:56; Ответить: imp
Сообщение #6


подскажите как можно дополнить ниже изложеный код :

IP 200.1.1.1-255.1.1.1
порты , 80,8080,3128

что бы проверял ИП по очереде и порты и если находил проксю записывал в файл.... ph34r.gif
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
FjuZ
FjuZ
сообщение 23.2.2009, 21:07; Ответить: FjuZ
Сообщение #7


спасибо! сейчас посмотрим smile.gif


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexa
alexa
Topic Starter сообщение 24.2.2009, 14:21; Ответить: alexa
Сообщение #8


(imp @ 23.2.2009, 17:56) *
подскажите как можно дополнить ниже изложеный код :

IP 200.1.1.1-255.1.1.1
порты , 80,8080,3128

что бы проверял ИП по очереде и порты и если находил проксю записывал в файл.... ph34r.gif

данный скрипт какраз это и делает ....
сгенерируйте диапазон айпи адресов ... и айпипортов, такое елементарно делается на ПХП


Более свежая версия скрипта тут
php-online-proxy-script-for-web-server

для строки
curl_setopt($ch, CURLOPT_TIMEOUT, 10);

советую увеличивать таймаут прокси
10- это для нормального прокси, а все шаровые имеют лимиты
и там таймаут нужно ставить 60-80 секунд .....
тем самым увеличивается время проверки


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
imp
imp
сообщение 24.2.2009, 16:58; Ответить: imp
Сообщение #9


(alexa @ 24.2.2009, 13:21) *
данный скрипт какраз это и делает ....
сгенерируйте диапазон айпи адресов ... и айпипортов, такое елементарно делается на ПХП


Более свежая версия скрипта тут
php-online-proxy-script-for-web-server

для строки
curl_setopt($ch, CURLOPT_TIMEOUT, 10);

советую увеличивать таймаут прокси
10- это для нормального прокси, а все шаровые имеют лимиты
и там таймаут нужно ставить 60-80 секунд .....
тем самым увеличивается время проверки


угу если с ПХП хорошо знаком... а если нет это вызывает определенные трудности
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
imp
imp
сообщение 24.2.2009, 18:03; Ответить: imp
Сообщение #10


и еще вопрос почему не накручиваются рейтин ведь поидеи когда идет проверка прокси если она удачьная он обращается к сайту через нее... blink.gif

вот через Оперу нормально при подстановки прокси нормально регистрирует новый хот что просмотрел... blink.gif

Сообщение отредактировал imp - 24.2.2009, 18:11
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Продам скрипт rtb exchange suite - система перепродажи трафика dsp/ssp в реальном времени.
5 buypushplatform 4280 Вчера, 21:02
автор: 100ftd
Открытая тема (нет новых ответов) PROXY-STORE.COM — ipV4 прокси от 42р В МЕСЯЦ с ротацией и без! Лучшая цена на рынке. 200+ стран
21 proxystore 5342 19.4.2024, 12:02
автор: proxystore
Открытая тема (нет новых ответов) ProxyLab — Мобильные прокси. 1 порт в 1 руки!
15 ProxyLab 4165 16.4.2024, 15:28
автор: ProxyLab
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыPROXYWINS.com - Купить индивидуальные серверные прокси IPv4.
Хороший ОПТ, ЛУЧШАЯ ЦЕНА - ПРОМОКОД ВНУТРИ
52 ProxyWins 26509 15.4.2024, 10:01
автор: ProxyWins
Открытая тема (нет новых ответов) Лучшие резидентские прокси для вебмастеров Asocks.com
8 Asocks 3747 4.4.2024, 16:15
автор: Asocks


 



RSS Текстовая версия Сейчас: 24.4.2024, 0:08
Дизайн