Как настроить 301 редиректы на DLE 14.Х
Сайты и домены
При переезде с Wordpress на DLE возникла проблема - как организовать 301 редирект со старых страниц, дающих трафик, на новые. Перерыв интернет, нашел решение и делюсь им с вами. Обычный способ не подходит - сайт сразу падает в ошибку 500, хостер пишет всякую чушь - вплоть до ошибок SSL на CLoudflare.
Проблема
Когда решил переехать возникла проблема - DLE в структуре своих ссылок содержит id новости, чего в Вордпресс у меня не было. Поэтому необходим был 301 редирект со старых ссылок на новые, чтоб трафик не упал до уровня дна. Погуглив, увидел, что ничего сложного в организации нет. Забил файл .txt ссылками заранее на старую и новую версии, получил файл со строками вида:
Redirect 301 %old_url% %new_url%
%old_url% — старый адрес страницы без домена
%new_url% — новый адрес страницы с указанием домена и протокола
Остался очень собой доволен, перенес сайт, залил все строки в .htaccess Не прошло и 3-х минут, сайт у меня отвалился в ошибку 500. о за эти 3 минуты я успел уже сменить протокол сайта на https и сделать сброс всего кэша. Конечно начались танцы с бубном в этом направлении.
После получаса решил написать хостеру, может он видит проблему. Хостер прислал инструкцию о правильном переносе сайта (точь-в-точь такую, по которой я сто лет переношу и сам). Вторым сообщением написал, что у меня истек SSL сертификат на Cloudflare. И это продолжалось около 20 минут. За эти 20 минут я всё еще "танцевал с бубном" и удалил файл .htaccess - сайт сразу же заработал. Какк оказалось позже, удалив свои кривые 301 редиректы сайт заработал и с файлом .htaccess
Решение
Часа два искал и читал форумы о том, как сделать верный редирект на DLE. Везде была написана либо чушь, либо нытье, либо "читай мануал". В итоге нашел единственную толковую и работающую вещь. Выкладываю тут, может кому пригодится в будущем. Пример нескольких строк:
RewriteRule ^kontrolnyie-rabotyi-po-matematike-11-klass/$ https://xn--80aerobhh.xn--p1ai/kontrolnye-raboty-po-matematike-11-klass.html [L,R=301]
RewriteRule ^kalkulyator/$ https://xn--80aerobhh.xn--p1ai/kalkuljatory.html [L,R=301]
RewriteRule ^category/ege/17-c5/$ https://xn--80aerobhh.xn--p1ai/ege/zadacha-17-profil/ [L,R=301]
И обязательно в конце всего завершаем
RewriteEngine On
Хотя последнее не проверял - нужно ли оно (или ради смеха было написано). Но всё работает, сайт открывается, проблема решена.
Последние статьи сайта
Задача 4 ЕГЭ В магазине в одной коробке лежат вперемешку ручки с чёрными, синими и красными чернилами, одинаковые на вид. 0,47 0,18
В магазине в одной коробке лежат вперемешку ручки с чёрными, синими и красными чернилами, одинаковые на вид....
Задача 4 ЕГЭ Термометр измеряет температуру в помещении. Вероятность того, что температура окажется ниже +18 0,27 0,36
Термометр измеряет температуру в помещении. Вероятность того, что температура окажется ниже +18 равна 0,27. Вероятность...