Правильный Robots.txt и .htaccess для DLE

Правильный Robots.txt и .htaccess для DLE

Описание:
Выкладываю это здесь, чтобы не забыть. Да может и понадобиться кому не будь 🙂
Настройка Robots.txt для Dle
User-agent: *
Disallow: /*print
Disallow: /user/
Disallow: /backup/
Disallow: /engine/
Disallow: /language/
Disallow: /templates/
Disallow: /upgrade/
Disallow: /uploads/
Disallow: /autobackup.php
Disallow: /admin.php
Disallow: /index.php?do=addnews
Disallow: /index.php?do=feedback
Disallow: /index.php?do=lostpassword
Disallow: /index.php?do=pm
Disallow: /index.php?do=register
Disallow: /index.php?do=stats
Disallow: /index.php?do=search
Disallow: /index.php?subaction=newposts
Disallow: /?do=lastcomments
Disallow: /statistics.html
Host: Ваш_сайт
Sitemap: //Ваш_сайт/sitemap.xml
В результате:
Из индекса убираются все версии страниц для печати;
Закрываются страницы профилей, при помощи которых часто спамят недобросовестные веб мастеры;
Запрещаются к индексации страницы, на которых отсутствует полезный для посетителей контент, например, админка;
Отбрасываем всякий хлам;
Задаём местонахождение карты сайта и хост.
Настройка .htaccess для Dle
Открываем файл, который, как и предыдущий находится в корне сайта. Находим строчки в самом начале:
DirectoryIndex index.php
RewriteEngine On
Вместо них вставляем:
RewriteEngine On
Options +Indexes
Options +FollowSymLinks
# Редирект для категорий (чтобы в конце URL был /)
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !-f
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !.html$
RewriteCond %{REQUEST_URI} !.xml$
RewriteRule (.+) $1/ [R=301,L]
# Редирект c www на без www
RewriteCond %{HTTP_HOST} ^www.site.ru
RewriteRule ^(.*)$ //site.ru/$1 [R=permanent,L]
# Редирект для главной (с /index.php,html на /)
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ / [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ / [R=301,L]
В коде, на всякий случай, есть пояснения. Их удалять не обязательно — на работе они никак не скажутся. Не забываем вместо site.ru прописывать нужный адрес.
В результате:
Все адреса категорий на конце будут со слешем (/) — для удаления из индекса разных url.
Основным хостом сайта задаётся адрес без www. Аналогично можно сделать и наоборот.
Устанавливаем редирект со всех второстепенных адресов главной страницы (site.ru/index.php, www.site.ru и www.site.ru/index.php) на один — site.ru.