|
|
|
| Здравствуйте.
Суть в следующем: есть скрипт производящий анализ сайта, вы указываете сайт и получаете следующую статистику: (адрес скрипта http://www.articlesworld.ru/stat/analysis.php)
- ИЦ, PR и т.п.
- название сайта, ключевые слова, описание
- число обратных ссылок по Yandex, Rambler и т.п.
- присутствие сайта в каталогах
- и т.п.
В скрипте используются функции вида:
function robots($url)
{
$file = @file_get_contents("http://www.yandex.ru/cgi-bin/test-robots?host=$url");
if(preg_match("!Сервер вернул код ошибки 404!si",$file,$ok))
$link = "нет";
else
$link = "есть";
return $link;
}
|
В соответствующих местах происходит вызов функций.
Поскольку таких функций много, то это замедляет работу.
Подскажите, пожалуйста, как можно увеличить производительность в данной ситуации.
Я очень надеюсь на Вашу помощь.
Заранее большое Вам спасибо | |
|
|
|
|
|
|
|
для: webwizard
(29.01.2008 в 17:31)
| | Неужели нет соображений? Ну кто-нибудь выскажитесь. | |
|
|
|
|
|
|
|
для: webwizard
(29.01.2008 в 19:06)
| | наверное никак не увеличите производительность , всё зависит от того насколько быстро яндекс даст ответ на запрос . Непонятно зачем это , яндекс просто определяет есть.ли файл robots.txt ? Или что он проверяет ?
microsoft вернул код 301 :) а кроме 404 видел ещё только что.то типа не найдено чего.то подходящего | |
|
|
|
|
|
|
|
для: EXP
(29.01.2008 в 23:05)
| | EXP, спасибо за ответ.
Эту функцию я привёл для примера, чтобы проще было понять суть моей проблемы | |
|
|
|
|
|
|
|
для: webwizard
(29.01.2008 в 19:06)
| | Господа! По ссылке ВИРУС!
(Аваст кричит) | |
|
|
|
|
|
|
|
для: bronenos
(29.01.2008 в 23:13)
| | bronenos, какой вирус?
У меня стоит лицензионный Касперский 7.0, который блокирует все вирусы, видно это что-то у Вас там слетело.
К тому же на хостинге есть 100% защита от вирусов, невозможно закачать файл, который содержит вирусы, поэтому не надо никого пугать, лучше бы помогли с ответом. | |
|
|
|
|
|
|
|
для: webwizard
(30.01.2008 в 09:57)
| | Я что, шутить по-вашему решил? Вирус закричал - я и проверять не стал.
А может там js чей-то генерит iframe и туда загружает страницу опасную? | |
|
|
|
|
|
|
|
для: bronenos
(30.01.2008 в 10:24)
| | bronenos, это ерунда, поробуйте проверьте, ничего не случиться.
Тем самым Вы проверите свой антивирусник | |
|
|
|
|
|
|
|
для: webwizard
(30.01.2008 в 12:42)
| | VBS:Malware-gen
И не разрешается мне страницу загрузить | |
|
|
|
|
|
|
|
для: bronenos
(30.01.2008 в 12:48)
| | bronenos, ну у ВАс одни странности.
Я свободно работаю с этой страницей, это пока тестовый вариант, но абсолютно работоспособный.
bronenos, подскажите, мне пожалуйста, как можно анализировать работу функции:
file_get_contents($url)
Это необходимо для того, чтобы не напрягать сервер на всякие глупости, вроде этого
$url = http://werwerwerwer.retretret и т.п.
просто использовать регулярные выражения для проверки url для меня не выход. Мне нужно анализировать ответ сервера file_get_contents($url) | |
|
|
|
|
|
|
|
для: webwizard
(30.01.2008 в 12:55)
| | я бы через сокеты делал | |
|
|
|
|
|
|
|
для: bronenos
(30.01.2008 в 14:14)
| | Хорошо, спасибо за совет, bronenos | |
|
|
|
|
|
|
|
для: webwizard
(29.01.2008 в 17:31)
| | хм... может юзать cURL? Быстрее будет
<?php
function getPage($link){
global $arGetsLink;
if(empty($arGetsLink[$link])):
$ch = curl_init($link);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$page = curl_exec($ch);
$request = curl_getinfo($ch);
if(curl_errno($ch)) echo '<br/>CURL Error:'.curl_error($ch).'<br/>';
curl_close($ch);
$arGetsLink[$link] = ( $request['http_code'] == 200 )?$page:false;
endif;
return $arGetsLink[$link];
}
?>
|
| |
|
|
|
|
|
|
|
для: CrazyAngel
(30.01.2008 в 14:34)
| | CrazyAngel спасибо Вам большое, Вы уже какой раз меня выручаете точными советами. | |
|
|
|