Saney

Рейтинг
173
Регистрация
25.12.2003
Интересы
Affiliate Marketing
OmgRes:
Гугл бот ложил на 301, он просто добавляет в базу для обхода при 301 редиректе, мгновенного перехода бота нет. У яндекса наоборот - по 301 мгновенный переход бота.

Saney, твои логи показывают лишь то, что сервер отдает боту 301 редик и все)

Googlebot сразу же переходит по 301 редиректу, если пункт назначения не забанен, не закрыт. Это легко проверить.

Даже в google mobile test вбей сайт с www / - оно покажет, что сразу переходит 🤣

Не нужно нам твоей фантастики :D Я лет 5 использую эту фишку, индексирую чужие страницы. В 100% случаев он приходил сразу же 🤣

http://saney.ru/blog/seo/google-index-fast/

Логи показывают, что бот ходит. А у человека не ходит.

XPraptor:
Saney, первый обход ботом - никакой роли сайт ваш не играет. Гугл все-ранов придет и заберет страницы. А вот если он потом начнет их выплевывать и сайт минусить - это уже будут проблемы сайта. Но проход ботом свежерега и вход в индекс первый - никакой сайт роли не играет, только то, чем загоняете.

Это вообще к чему? Ты название темы видел? А как же быть, когда остановилась индексация, закончился краулинговый бюджет, и не ходит googlebot в логах вообще на сайт? Да, плевать там мне, что у кого выпадает. Это другой вопрос вообще. Надо уметь делать контент на доре, чтобы не выпадал. Тяжело признать какую-то новую фишку, когда много лет в теме - понимаю :)

Создай тему - "как сделать так, чтобы доры на тысячи страниц не выпадали из основного индекса". Вот там и расскажешь все, что думаешь :)

ps. Вот, допустим ситуацию - дор на 50к страниц начал индексироваться на основном домене. Ты создаешь поддомен через пару недель - и он нифига не индексируется, вяло очень, так как основной домен сожрал весь бюджет и бот пасется только на нем, пока весь не пройдет. А ты берешь вспомогательный домен - ставишь редиректы на этот новый поддомен. И о чудо, слава Богам, гугл обратил внимание на поддомен :)

Safronov,

Ребят, я не буду включать режим Арбайтена и говорить "я вам все дал" :) Но, ситуация похожая.

У меня в логах вот такое творится на новорегах под редиректы:

Это через 2 недели после запуска. В первый день бот по 2 раза в секунду заходил.


crawl-66-249-64-106.googlebot.com - - [11/May/2019:09:36:25 +0000] "GET /699/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-114.googlebot.com - - [11/May/2019:09:48:29 +0000] "GET /1015/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-114.googlebot.com - - [11/May/2019:09:55:41 +0000] "GET /860/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-118.googlebot.com - - [11/May/2019:09:58:42 +0000] "GET /616/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-114.googlebot.com - - [11/May/2019:10:10:59 +0000] "GET /779/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-116.googlebot.com - - [11/May/2019:10:12:01 +0000] "GET /684/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-114.googlebot.com - - [11/May/2019:10:13:54 +0000] "GET /705/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-118.googlebot.com - - [11/May/2019:10:18:26 +0000] "GET /556/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-118.googlebot.com - - [11/May/2019:10:23:41 +0000] "GET /695/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-114.googlebot.com - - [11/May/2019:10:48:00 +0000] "GET /654/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-114.googlebot.com - - [11/May/2019:10:54:21 +0000] "GET /182/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-116.googlebot.com - - [11/May/2019:10:56:32 +0000] "GET /50/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-104.googlebot.com - - [11/May/2019:11:00:25 +0000] "GET /834/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-108.googlebot.com - - [11/May/2019:11:03:07 +0000] "GET /15/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-116.googlebot.com - - [11/May/2019:11:12:12 +0000] "GET /474/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-108.googlebot.com - - [11/May/2019:11:20:15 +0000] "GET /461/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-108.googlebot.com - - [11/May/2019:11:29:12 +0000] "GET /364/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
crawl-66-249-64-106.googlebot.com - - [11/May/2019:11:38:54 +0000] "GET /921/ HTTP/1.0" 301 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"

Чем я еще могу вам помочь?

XPraptor:
Чушь.
Для обхода ботами и количество обхода - ваш сайт вообще не играет роли.
Чел вам дал схему, но забыл упомянуть, что решают именно домены, которыми вы пытаетесь так загнать, вот от них и зависит, как быстро и как много будет бот обходить ваши свежереги и дропы.

А народ уже обрадовался тут, нашли кнопку бабло :)

Продвигаемый сайт играет основную роль. В самом начале я написал, что индексация зависит от самого продвигаемого сайта. А просто пригнать бота на плохой сайт и ждать типа индексации это глупо. Он может быть плохим для гугла, под фильтром. У него может закончиться краулинговый бюджет. Так вот, этот скрипт поможет даже при закончившемся краулинговом бюджете продолжать индексировать - используя бюджет донора. На каждый заход на редирект googlebot вынужден идти по редиректу тут же - смотрите логи сервера. А загонять плохой по контенту дор надо внешними ссылками на каждую страницу.

Домен редиректа конечно же решает. Но, в том плане, что лучше брать СВЕЖИЙ домен. Так как гугл очень жадно индексирует в первые дни именно свежие домены. Будет сильный дроп для редиректов - это жирный плюс. И да, фриномы намного хуже индексируются, чем просто новореги.

Плюс, у этого скрипта есть побочный эффект. Много url редиректов становятся в выдачу гугла по запросам вместо сайтов, на которые ссылаешься :) Гугл часто неправильно выбирает canonical домен.

Вобщем, ребята, когда не умеешь пользоваться прибором - и его можно сломать :)

Ребята, все пропало 🤣 Какой-то Вася с серча забраковал, ему не понравилось. Годы работы коту под хвост :D Да, серч нынче не торт. Буду сворачивать скоро удочки отсюда.

Anamnado:
Но - практика показывает это фигня ..... все эти сайтмапы и совершенно ни на что не влияет

А мы вот тут считаем иначе.

/ru/forum/997987

Если внешние ссылки поставить на эти страницы, то они будут сколько угодно долго в индексе держаться. C парочки blogspot блогов будет достаточно. Ну, будут они, образно говоря, с PageRank=0, с самого сайта вес на них не передается. Но, по текстовым факторам и внешним ссылкам все передастся :)

Дорвейщики уже десятилетиями так делают с профилями на форумах.

Вред ты этим, конечно, вряд ли ему нанесешь. Разве-что будешь размещать поисковые запросы: порн, названия фильмов, сериалов, книг со словами скачать бесплатно, torrent, казино вулкан, ставки, Навальный и тд... :)

Anamnado, Создай blogspot блог, на нем статью со ссылками на твои страницы. Статью отправь в консоль на индексацию.

А вообще это может быть банальное кеширование, ты часто чекаешь страницу в индексе. Она давно в индексе. Запросы со страницы поищи в выдаче.

CryptosFever:
разобрался, я на тест закинул 3 ссылки, а рандом стоял 100-150, вот оно и не работало, есть, правда, тоже интересный момент, я закинул 4 ссылки, поставил рандом 1-3 ссылок, но иногда при рефреше главная пустая, не отдает ссылок. но это мелочи жизни :)

Да, так и есть. Там недочет, прошу прощения. Это я кинул какую-то свою урезанную версию. Там нет проверки на файл, где ссылок меньше 100. А редактировать пост уже нельзя. Я не подумал, что людям надо меньше 100 ссылок проиндексировать. "Большое количество доров" в названии темы вскружило мне голову :D

Замените строку

$links_keys = array_rand( $sitemap_arr, mt_rand( 100, 150 ) );

на


if( sizeof( $sitemap_arr ) >= 150 ) $links_keys = array_rand( $sitemap_arr, mt_rand( 100, 150 ) );
else $links_keys = array_rand( $sitemap_arr, sizeof( $sitemap_arr ) );

или вот исправленная версия

<?php
define( 'SITE_PROTOCOL', 'https' );
define( 'HOMEPAGE_LINKS', '1' ); // 1 - ON, 0 - OFF
/*
1 - показывает на морде 100-150 random ссылок из sitemap.txt для googlebot, на больших файлах жрет память/процессор, будет перемешивать большой массив array_rand( $sitemap_arr, 150 ). По-этому, делайте links.txt до 1000 ссылок. Когда морда сайта быстрая, валидна под mobile и обновляется - googlebot будет часто пастись на ней.

0 - на морде не показывает ссылки, редиректы из sitemap.txt работают штатно, этого вполне достаточно.

Для работы скрипта надо (apache, nginx, php5+):
1. Добавить ненужный вспомогательный домен/поддомен/фрином в Google Search Console, подтвердить html файлом.
2. Создать файл links.txt - в него добавить ссылки, домены, которые надо проиндексировать. Лучше до 1000 штук.
3. Закачать links.txt и этот index.php в корень вспомогательного домена.
4. Вызвать в браузере этот домен: https://domain.com/ - он создаст sitemap.txt
5. В Google Search Console добавить sitemap.txt на индексацию + морду сайта тоже на индексацию.
6. Готово.

*/
error_reporting( E_ERROR | E_PARSE );

if ( !file_exists( 'sitemap.txt' ) ){
$links_arr = file( 'links.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES );
if( sizeof( $links_arr ) != 0 ){
$links_arr = file( 'links.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES );
$var = chr( mt_rand( 97, 122 ) ) . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 5, 9 ) );
$sitemap = '';
foreach ( $links_arr as $k => $v ){
$sitemap .= SITE_PROTOCOL."://" . $_SERVER['HTTP_HOST'] . "/index.php?" . $var . "=" . ( $k + 1 ) . "\n";
}
file_put_contents( 'sitemap.txt', trim( $sitemap ) );
header("Location: ".SITE_PROTOCOL."://" . $_SERVER['HTTP_HOST'] ."/");
exit();
}
}elseif( $_SERVER['REQUEST_URI'] == '/'){

?><!doctype html>
<html>
<head>
<title><?php echo $_SERVER['HTTP_HOST'] . ' ' . md5( time() ); ?></title>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="googlebot" content="index, follow, noarchive" />
<meta name="robots" content="index, follow, noarchive" />
<link rel="canonical" href="<?php echo SITE_PROTOCOL . '://' . $_SERVER['HTTP_HOST']; ?>/" />
<style>
html, body { font-size: 1rem; padding: 10px; text-align:center; }
a { margin: 20px 20px 20px 20px; line-height: 1rem; display: inline-block;}
</style>
<meta name="google" content="notranslate" />
</head>
<body>
<h2><?php echo $_SERVER['HTTP_HOST'] . ' ' . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 10, 16 ) ) ; ?></h2>
<p><?php echo substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 8, 14 ) ) . ' ' . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 8, 14 ) ) . ' ' . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 8, 14 ) ) . ' <strong> ' . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 8, 14 ) ) . ' </strong> ' . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 8, 14 ) ); ?></p>
<div>
<?php
if( HOMEPAGE_LINKS == '1'){
$sitemap_arr = file( 'sitemap.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES );
if( sizeof( $sitemap_arr ) >= 150 ) $links_keys = array_rand( $sitemap_arr, mt_rand( 100, 150 ) );
else $links_keys = array_rand( $sitemap_arr, sizeof( $sitemap_arr ) );
$links_html = '';
foreach( $links_keys as $k => $v ){
$links_html .= ' <a href="'.trim( $sitemap_arr[ $v ] ).'">'.chr( mt_rand( 97, 122 ) ) .'</a> ';
if( $k % mt_rand( 10, 14) == 0 && $k != 0 ) $links_html .= "<br>" . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 10, 16 ) ) . "<br>";
}
echo $links_html;
}
?>
</div>
<p>Copyright <?php echo $_SERVER['HTTP_HOST']; ?> All Rights Reserved</p>
</body></html>
<?php

}else{
$links_arr = file( 'links.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES );
$sitemap_arr = file( 'sitemap.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES );
$dynamic_var = $sitemap_arr[0];

preg_match( '/php\?(.*?)=/s', trim( $sitemap_arr[0] ), $matches);
$dynamic_var = isset( $matches[1] ) ? $matches[1] : '';

if( $dynamic_var != '' && $_REQUEST[ $dynamic_var ] != '' ){
$link_id = htmlspecialchars( $_REQUEST[ $dynamic_var ] );
if ( is_numeric( $link_id ) && isset( $links_arr[ $link_id - 1 ] ) ){
header("HTTP/1.1 301 Moved Permanently");
header("Location: ".$links_arr[ $link_id - 1 ]."");
exit();
}else{
header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found"); exit;
}
}else{
header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found"); exit;
}
}

?>

Если захотите модифицировать/добавить новых ссылок, то придется удалять старый sitemap.txt. Он сгенерится новый, с уже новыми ссылками. Старые не будут работать. А Googlebot будет подолжать по ним ходить с 404 ошибкой, даже, если вы удалите sitemap в консоли. Потом он прекратит этот домен вообще индексировать. Лучше так не делать. Один раз сгенерите, отправьте на индексацию и все. Либо ковыряйтесь в скрипте. Я просто устал уже читать это нытье и выложил решение, какое есть :)

Кто хочет, может наворотить этот скрипт по своему усмотрению. У меня лично сам этот вспомогательный сайт на 1000 текстовых страниц. И вместо хэшей там генеренный текст, чтобы в индексе держало долго. Или тематический текст, который и позиции в поиске какие-то имеет. И есть настройки, чтобы с ключевыми словами ссылки были на редиректы, и не по 100, а по 1 на странице. Но, редиректов в sitemap.txt вам хватит с головой. Также, имейте ввиду, что гугл сейчас любит быстрые сайты. Прикрутите домен к CloudFlare (он, образно говоря, в соседнем здании от google) - и будет еще быстрее индексировать.

Всем удачи.

Друзья, вот вам рабочая lite версия моего скрипта для массового приглашения googlebot на чужие ссылки, сайты, доры через редиректы в sitemap.txt. И не говорите больше никогда, что это дорого и невозможно 🤣

1. Нужен новый домен/поддомен, добавленный в Google Search Console.

2. Заливаете файл links.txt со списком ваших url в корень.

3. Заливаете этот index.php в корень.


<?php
define( 'SITE_PROTOCOL', 'https' );
define( 'HOMEPAGE_LINKS', '1' ); // 1 - ON, 0 - OFF
/*
1 - показывает на морде 100-150 random ссылок из sitemap.txt для googlebot, на больших файлах жрет память/процессор, будет перемешивать большой массив array_rand( $sitemap_arr, 150 ). По-этому, делайте links.txt до 1000 ссылок. Когда морда сайта быстрая, валидна под mobile и обновляется - googlebot будет часто пастись на ней.

0 - на морде не показывает ссылки, редиректы из sitemap.txt работают штатно, этого вполне достаточно.

Для работы скрипта надо (apache, nginx, php5+):
1. Добавить ненужный вспомогательный домен/поддомен/фрином в Google Search Console, подтвердить html файлом.
2. Создать файл links.txt - в него добавить ссылки, домены, которые надо проиндексировать. Лучше до 1000 штук.
3. Закачать links.txt и этот index.php в корень вспомогательного домена.
4. Вызвать в браузере этот домен: https://domain.com/ - он создаст sitemap.txt
5. В Google Search Console добавить sitemap.txt на индексацию + морду сайта тоже на индексацию.
6. Готово.

*/
error_reporting( E_ERROR | E_PARSE );

if ( !file_exists( 'sitemap.txt' ) ){
$links_arr = file( 'links.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES );
if( sizeof( $links_arr ) != 0 ){
$links_arr = file( 'links.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES );
$var = chr( mt_rand( 97, 122 ) ) . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 5, 9 ) );
$sitemap = '';
foreach ( $links_arr as $k => $v ){
$sitemap .= SITE_PROTOCOL."://" . $_SERVER['HTTP_HOST'] . "/index.php?" . $var . "=" . ( $k + 1 ) . "\n";
}
file_put_contents( 'sitemap.txt', trim( $sitemap ) );
header("Location: ".SITE_PROTOCOL."://" . $_SERVER['HTTP_HOST'] ."/");
exit();
}
}elseif( $_SERVER['REQUEST_URI'] == '/'){

?><!doctype html>
<html>
<head>
<title><?php echo $_SERVER['HTTP_HOST'] . ' ' . md5( time() ); ?></title>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="googlebot" content="index, follow, noarchive" />
<meta name="robots" content="index, follow, noarchive" />
<link rel="canonical" href="<?php echo SITE_PROTOCOL . '://' . $_SERVER['HTTP_HOST']; ?>/" />
<style>
html, body { font-size: 1rem; padding: 10px; text-align:center; }
a { margin: 20px 20px 20px 20px; line-height: 1rem; display: inline-block;}
</style>
<meta name="google" content="notranslate" />
</head>
<body>
<h2><?php echo $_SERVER['HTTP_HOST'] . ' ' . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 10, 16 ) ) ; ?></h2>
<p><?php echo substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 8, 14 ) ) . ' ' . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 8, 14 ) ) . ' ' . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 8, 14 ) ) . ' <strong> ' . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 8, 14 ) ) . ' </strong> ' . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 8, 14 ) ); ?></p>
<div>
<?php
if( HOMEPAGE_LINKS == '1'){
$sitemap_arr = file( 'sitemap.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES );
$links_keys = array_rand( $sitemap_arr, mt_rand( 100, 150 ) );
$links_html = '';
foreach( $links_keys as $k => $v ){
$links_html .= ' <a href="'.trim( $sitemap_arr[ $v ] ).'">'.chr( mt_rand( 97, 122 ) ) .'</a> ';
if( $k % mt_rand( 10, 14) == 0 && $k != 0 ) $links_html .= "<br>" . substr( md5( time() + mt_rand( 1, 9999) ), 0, mt_rand( 10, 16 ) ) . "<br>";
}
echo $links_html;
}
?>
</div>
<p>Copyright <?php echo $_SERVER['HTTP_HOST']; ?> All Rights Reserved</p>
</body></html>
<?php

}else{
$links_arr = file( 'links.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES );
$sitemap_arr = file( 'sitemap.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES );
$dynamic_var = $sitemap_arr[0];

preg_match( '/php\?(.*?)=/s', trim( $sitemap_arr[0] ), $matches);
$dynamic_var = isset( $matches[1] ) ? $matches[1] : '';

if( $dynamic_var != '' && $_REQUEST[ $dynamic_var ] != '' ){
$link_id = htmlspecialchars( $_REQUEST[ $dynamic_var ] );
if ( is_numeric( $link_id ) && isset( $links_arr[ $link_id - 1 ] ) ){
header("HTTP/1.1 301 Moved Permanently");
header("Location: ".$links_arr[ $link_id - 1 ]."");
exit();
}else{
header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found"); exit;
}
}else{
header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found"); exit;
}
}

?>

4. Вызываете морду сайта - оно создаст sitemap.txt.

5. Добавляете sitemap.txt в Google Search Console на индексацию.

6. Добавляете морду сайта тоже на индексацию.

7. Готово.

MO $$$:
Всё вышеописанное можно сделать средствами nginx например :).

Ты удивишься, но, большинство тут не знают как и с .htaccess сделать. Им готовый скрипт подавай :D Я года 2-3 назад этот метод спалил - никто не использует. Все ноют и платят кому-то за привод гуглбота :)

Сделай и выложи будь добр для nginx, а я пока напишу на php без .htaccess.

Всего: 1062