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

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

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=

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


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

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

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

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

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

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


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

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

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


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

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

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

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


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

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

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

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


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

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

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

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

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

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


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

Посмотрите у вас в 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, а так же не являются реально существующими файлами.

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


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

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

 

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

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


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

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

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


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

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

 

нужно всем

 

 

Процентам этак 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

 

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


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

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

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

или

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

 

 

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

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

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


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

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

 

Эти условия отменяют применение правила на адресах соответствующих реально существующим файлам и директориям, а не таким, что имитируются 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>

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


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

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

 

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

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

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


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

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

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

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

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

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

Войти

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

Войти сейчас