Показать сообщение отдельно
Старый 11.08.2013, 19:51   #8
Ивано++
Senior Member
 
Аватар для Ивано++
 
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
По умолчанию

Вот самый простой пример с file_get_contents
Есть карта сайта (содержит все страницы):

http://studsovet-life.ru/sitemap.xml

И ради интереса делаем file_get_contents (условно говоря на индексирование)...
PHP код:
<?php
/*print "<pre>";
print_r(get_headers($url));
print_r(get_headers($url, 1));
*/

$time microtime();
$time explode(' '$time);
$time $time[1] + $time[0];
$start $time;


$content file_get_contents ("http://studsovet-life.ru/sitemap.xml");
preg_match_all'#<loc>(.+?)</loc>#is'$content$reg );

foreach (
$reg[1] as $key => $value){


    
$a file_get_contents($value);
    print 
"Получен " $value "<br />";
    
#print $a;
    
}

$time microtime();
$time explode(' '$time);
$time $time[1] + $time[0];
$finish $time;
$total_time round(($finish $start), 4);
echo 
'Скрипт генерировался '.$total_time.' seconds.'."\n";
#print "<pre>";

#print_r($reg[1]);

?>
Запускаем этот скрипт -
http://studsovet-life.ru/test.php = 8 секунд работы

И весь сайт условно говоря проиндексирован...

Ставим cron - и время от времени (бот или как-еще придумать) - сайт будт обходиться...
Если пользователь - кто-то во FE-что-то меняет - то ставим в очередь на индексаци... либо после "кнопки сохранить" - запускаем функцию перенидексации страницы.


И потом страницы которые не изменились - можно не индексировать.


Т.к. на сайте у нас может быть сложная логика - к примеру виртуальные страницы - мы их также добавляем в отдельные карты сайта...
В общем разбиваем. В meta-header - добавляем специальный параметр который будет отвечать за тип информации.

Также еще есть интересное расширение: Crawler - что то вроде обходчика.

Последний раз редактировалось Ивано++; 11.08.2013 в 20:03
Ивано++ вне форума   Ответить с цитированием