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

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Многопоточный сканер директорий сайта (https://forum.antichat.xyz/showthread.php?t=122436)

oRb 26.05.2009 20:20

Многопоточный сканер директорий сайта
 
Вложений: 1
Кто прочел название треда, наверняка подумали "нахрена этот очередной боян?". Так вот задачей было - разобраться с "Process Control support in PHP", т.е. научиться использовать не псевдомногопоточность (через крон, пул неблокирующих сокетов, etc), а нормальное создание процесса в стиле Unix.

Ограничения:
[#] под виндой работать не будет
[#] php нужно собирать с опцией --enable-pcntl

Фунционал:
[#] head запросы
[#] каждый поток открывает всего одно Keep-Alive соединение
[#] можно указать при каких кодах ответов путь будет считаться несуществующим.
[#] можно указать при каких значениях поля location путь будет считаться несуществующим.
[#] для каждого потока юзер-агент берется рандомно.

Пример работы (канал 2 мб/с, в базе было 99 юрлов, 5 потоков):
Код:

# /usr/bin/php index.php php.su
Host:        php.su
Ip:        82.140.91.131
Port:        80
Start:        26-05-2009 19:41:17
# GO GO GO!
[+] 500 - phpmyadmin/
[+] 200 - info.php
[+] 302 - images/
[+] 200 - icons/
Finish:        26-05-2009 19:41:19

Links:
[#] http://ru2.php.net/manual/ru/intro.pcntl.php
[#] быдлокод в аттаче

ps: есть пока 1 бага/фича, с которой не разобрался. После завершения первого потока, скрипт отвязывается от терминала. Если кого-то это смущает, можно перенаправить вывод в файл.

gibson 26.05.2009 23:38

вот еще не плохая заметка по этому поводу. От туда только выводы
http://www.charnad.com/blog/kak-proverit-sushhestvuet-li-sajt/

Chaak 27.05.2009 01:25

А чего это в нем так много кода?
Там строчек 30 от силы

Shadow_p1raT 28.06.2009 17:25

Перезалейте пожалуйста.


Время: 16:51