Всем доброго времени суток! написал вот такой вот код Код (Text): $result = 50 саитов foreach($result as $one) { $site = $one['name_link']; $headers = get_headers('http://'.$site); echo '<br>','<hr>'; print_r($headers); echo '<br>','<hr>'; } запустил данный скрипт он не отрабатывает . выводы: 1 битые сылки тормазят выполнение 2 попытка ускорить Код (Text): stream_context_set_default(array( 'http' => array('method' => 'HEAD')) ); дало фатал Call to undefined function stream_context_set_default() наверное в ини настройки надо править разберусь. 3 Перед тем как спрашивать заголовки нужно спросить доступин ли сервер (линк) что он отвечает какая функция будит работать быстрей для этой задачи ? помогите решить данную задачу уважаемые гуру.
На самом деле сюрприз- приятный. спасибо Получается код написанный мной не является г-кодом? т.е получение таким способом
просто веб-сервер запарился ждать, и разорвал общение с пхп-скриптом. Но т.к. пхп тратит мало времени сам, а больше просто спит и ждёт ответа - то он укладывается в 30 сек своего отпущенного времени, даже если это продолжается десять минут =)
Что я получил при получение заголовков с 1 сайта. память:2906560 Время:0.226182 тестировал через curl дает ответ быстрей но из 200 тестируемых сайтов 50 сайтов не определил. как можно проверить (пинг) сайта на его доступность быстро для того чтобы не отдавать битую сылку в get_heders(); пытался использовать gethostbyname(); но некоторые сылки отдают ip но при этом вызов сайта в браузере не возможен проходит таимаут и все. () Как иначе можно принять заголовок например если нужна только первая строка . Или дернуть из apache састояние host/ он навярника знает еше и хеширует.