» » » Правильний 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: http://Ваш_сайт/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 ^(.*)$ http://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.


dle
1484 15.12.14



Напівжирний Нахилений текст Підкреслений текст Перекреслений текст | Вирівнювання по лівому краю По центру Вирівнювання по правому краю | Вставка смайликів Вибір кольору | Прихований текст Вставка цитати Перетворити вибраний текст з транслітерації в кирилицю Вставка спойлеру