Дмитрий Кондин

Вычищаем мусор из поискового индекса

Recommended Posts

В первых версиях шаблонов были открыты для индексирования ссылки, которые создавали очень много мусорных страниц.

Это относится к сортировке по району, улице, городу, типу и т.д.

Выглядят эти адреса примерно так

http://estate.sitebill.ru/?page=1&order=city&asc=asc

Со временем поисковый индекс очень сильно замусоривается.

Предлагаю такое решение, для быстрой чистки такого мусора.

В ./index.php сразу после строчки <?php добавьте вот этот код:

if ( (preg_match('/Googlebot/', $_SERVER['HTTP_USER_AGENT']) or preg_match('/YandexDirect/', $_SERVER['HTTP_USER_AGENT']) or       preg_match('/AhrefsBot/', $_SERVER['HTTP_USER_AGENT']) or       preg_match('/SputnikBot/', $_SERVER['HTTP_USER_AGENT']) or       preg_match('/Mail\.RU_Bot/', $_SERVER['HTTP_USER_AGENT']) or       preg_match('/YandexBot/', $_SERVER['HTTP_USER_AGENT'])  or preg_match('/bingbot/', $_SERVER['HTTP_USER_AGENT']) ) and ($_REQUEST['order'] == 'type' or $_REQUEST['order'] == 'district' or $_REQUEST['order'] == 'room_count' or $_REQUEST['order'] == 'city' or $_REQUEST['order'] == 'metro' or $_REQUEST['order'] == 'street' or $_REQUEST['order'] == 'price') ) {header("HTTP/1.0 404 Not Found");exit;}

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А например в robots.txt запретить такие страницы можно?

Вот так примерно Disallow: /?page=

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  В 11.06.2014 в 10:36, Doka сказал:

А например в robots.txt запретить такие страницы можно?

Вот так примерно Disallow: /?page=

Таким образом вы можете вырубить всю индексацию сайта.

Ведь через ?page= идет индексация и полезных страниц...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ясно! В принципе я уже код Ваш добавил в ./index.php (Это один файл, который в корне сайта лежит?)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Всем привет :)

Новые клиенты тоже должны менять код или в новом архиве уже исправлен этот файл?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Файл index.php не входит в пакет обновляемых, поэтому в новом архиве этого скорее всего нет.

Если сайт совсем новый, то логичнее в шаблоне realty_grid.tpl позакрывать <noindex> тегом сортировочные ссылки, чем дополнять индекс.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  В 16.06.2014 в 15:45, Alek сказал:

Всем привет :)

Новые клиенты тоже должны менять код или в новом архиве уже исправлен этот файл?

Посмотрите у вас в realty_grid.tpl есть теги noindex и nofollow, если есть, то вам не надо.

Если нет, то надо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  В 17.06.2014 в 02:09, rumantic сказал:

Посмотрите у вас в realty_grid.tpl есть теги noindex и nofollow, если есть, то вам не надо.

Если нет, то надо.

Вы имеете ввиду это

 

<table class="content_main" cellspacing="2" cellpadding="2">    <tr  class="row_head">        <td width="1%" class="row_title"></td>        <td width="1%" class="row_title">{$L_DATE}</td>        <td width="1%" class="row_title">{$L_ID}</td>        <td width="1%" class="row_title">{$L_PHOTO}</td>        <td width="70" class="row_title">{$L_TYPE} <noindex><a href="{$estate_folder}/{$url}&order=type&asc=asc" rel="nofollow"></a></noindex> <noindex><a href="{$estate_folder}/{$url}&order=type&asc=desc" rel="nofollow"></a></noindex></td>        <td width=13% class="row_title">{$L_CITY} <noindex><a href="{$estate_folder}/{$url}&order=city&asc=asc" rel="nofollow"></a></noindex> <noindex><a href="{$estate_folder}/{$url}&order=city&asc=desc" rel="nofollow"></a></noindex></td>        <td width=13% class="row_title">{$L_DISTRICT} <noindex><a href="{$estate_folder}/{$url}&order=district&asc=asc" rel="nofollow"></a></noindex> <noindex><a href="{$estate_folder}/{$url}&order=district&asc=desc" rel="nofollow"></a></noindex></td>        <td width=13% class="row_title">{$L_STREET} <noindex><a href="{$estate_folder}/{$url}&order=street&asc=asc" rel="nofollow"></a></noindex> <noindex><a href="{$estate_folder}/{$url}&order=street&asc=desc" rel="nofollow"></a></noindex></td>        <td class="row_title" nowrap>{$L_PRICE} <noindex><a href="{$estate_folder}/{$url}&order=price&asc=asc" rel="nofollow"></a></noindex> <noindex><a href="{$estate_folder}/{$url}&order=price&asc=desc" rel="nofollow"></a></noindex></td>        <td class="row_title">{$L_FLOOR}</td>        <td class="row_title">{$L_SQUARE} м<sup>2</sup></td>        {if $admin !=''}        <td class="row_title"></td>

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Для очищения индексации от дублей виде виде ссылок со слешем в конце и без оного

 

RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(.*).php$
RewriteCond %{REQUEST_URI} !(.*).html$
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [L,R=301]
 
принудительно заслешиваем все урлы, которые не оканчиваются на .php или .html, а так же не являются реально существующими файлами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  В 17.03.2015 в 16:03, phoenix сказал:

это относится к всем, кто только вчера дистр. скачал?)

 

скорее к тем, кому это нужно))

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

нужно всем, чтобы мусора не было) просто не знаю закрыто в последних версиях движка или нет:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Скорее всего что нет, хотя что-то возможно и да. Многие вещи из описываемых здесь, гнездятся в файлах не подлежащих обновлению Поэтому и изменения в них, даже для дистрибутива, применяются не часто.

 

  Цитата
нужно всем

 

 

Процентам этак 60-70 это вообще не интересно. Кому из-за нехватки времени заниматься сео, кому-то из-за нехватки финансирования для сео, кому-то потому, что привлечение посетителей делается другими методами, а не продвижкой сайта в поисковиках

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Как по мне, все равно стоит оптимизировать сайт, убрать дубли, добавить хлебные крошки, внутр. перелинковку.

Лишним трафик с поисковика не бывает:)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

в теперешней версии есть

 

  Цитата
Options -Indexes
AddDefaultCharset UTF-8
<IfModule mod_rewrite.c>
RewriteEngine On
#RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . index.php [L]
ErrorDocument 404 /404.html
</IfModule>

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

добавлять

 

  Цитата
RewriteCond %{REQUEST_URI} !(.*).php$
RewriteCond %{REQUEST_URI} !(.*).html$
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [L,R=301]

 

 

и за что отвечает?

  Цитата
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  В 18.03.2015 в 13:35, phoenix сказал:

и появился вопрос, как лучше

http://www.etown.ru/s/topic/test/

или

http://www.etown.ru/s/topic/test/html

 

 

вопрос созрел, так как разница в _ и - есть :)

Второй вариант вообще не вариант )

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  В 18.03.2015 в 13:32, phoenix сказал:

и за что отвечает?

 

Эти условия отменяют применение правила на адресах соответствующих реально существующим файлам и директориям, а не таким, что имитируются mod_rewrite'ом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

так правильно будет?

  Цитата

 

Options -Indexes
AddDefaultCharset UTF-8
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !(.*).php$
RewriteCond %{REQUEST_URI} !(.*).html$
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteRule ^(.*[^/])$ $1/ [L,R=301]

RewriteRule . index.php [L]
ErrorDocument 404 /404.html
</IfModule>

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  В 19.03.2015 в 13:04, phoenix сказал:

с таким меня из админки выкидывает и после не впускает)

 

а зачем в htaccess вы написали это? он и не будет пускать.

RewriteCond %{REQUEST_URI} !(.*)/$RewriteRule ^(.*[^/])$ $1/ [L,R=301]

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас