Редирект со старого домена на новый

Перевод сайта на новый домен с сохранением всех параметров старого.

301 редирект. Популярные шаблоны

Для того чтобы нижеизложенные шаблоны работали нужно перед их использованием прописать в файле .htaccess директивы для модуля mod_rewrite:

Options +FollowSymLinks
RewriteEngine On
RewriteBase /

Склейка домена (префикс www)

www.example.com и example.com в глазах поискового работа — абсолютно разные сайты, каждый со своими показателями. Для того чтобы не распылять вес, склеиваем эти адреса

Редирект с адреса www на адрес без www

RewriteCond %{HTTP_HOST} ^www\.(.*) 
RewriteRule ^(.*)$ http: // %1/$1 

Редирект с адреса без www на адрес с www

RewriteCond %{HTTP_HOST} !^www\.(.*) 
RewriteRule ^(.*)$ http: //www .%1/$1 

Зачастую главная страница вашего сайта доступна по нескольким адресам: example.com/ и example.com/index.php или example.com/index.html. Для склейки таких дублей, используем следующий шаблон:

Склейка индексной страницы с корнем сайта

RewriteCond %{THE_REQUEST} ^{3,9}\ /index \.php\ HTTP/
RewriteRule ^index\.php$ http: //example .com/ 

Склейка поддомена и папки

Иногда возникает необходимость сделать 301 редирект с поддомена на папку сайта. Например у вас есть страница category.example.com/page/ и вам нужно склеить ее с дублирующей страницей example.com/category/page/. Прописывем в файле .htaccess поддомена:

Редирект с поддомена на папку основного домена

RewriteCond %{HTTP_HOST} ^category\.example\.com 
RewriteCond %{HTTP_HOST} ^category\.example\.com
RewriteRule ^(.*)$ http: //example .com /category/ $1 

При необходимости наоборот перенаправить с папки на поддомен:

Редирект с папки основного домена на поддомен

RewriteCond %{HTTP_HOST} ^example\.com$ 
RewriteRule ^category\/(.*)$ http: //category .example.com/$1 

Редирект с одних расширений файлов на другие

Если вам необходимо сменить расширение файла в адресе (например page.html на page.php) или убрать его совсем:

RewriteRule ^(.*)\.html$ $1.php 

Редирект на другой сайт

При создании зеркала сайта либо переезде на новый домен, для склейки и перенаправления используем следующую конструкцию:

RewriteCond %{HTTP_HOST} ^oldsite\.com
RewriteRule ^(.*)$ http: //newsite .com/$1 

Все страницы домена oldsite.com будут перенаправлены на соответствующие страницы newsite.com.

301 Редирект динамических страниц

При модернизации динамического сайта и создании ЧПУ-адресов часто возникает необходимость перенаправить старые страницы с параметрами ID на новые с ЧПУ. Например, чтобы переадресовать страницу вида http://example.com/page.php?id=13 на новую страницу http://example.com/new-url/, используется следующая конструкция:

RewriteCond %{QUERY_STRING} ^ id =13$
RewriteRule ^ /page .php$ http: //example .com /new-url/ 

Добавляем слеш в конце адреса

Если у вас на сайте реализованы ЧПУ адреса тем или иным способом, то вероятно ваши ссылки могут работать либо со «/» на конце адреса либо без него одинаково. Добавим однозначности и добавим слеш ко всем адресам.

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /$1/ 

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

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

Выбор лучшего браузера для web-разработкиО чем писать в блоге, когда писать не о чем…Просто о виджетах (widgets) в WordPressКак найти вирус на сайтеПопулярные движки для форумовСистема комментирования HyperComments для сайта

Настраиваем редиректы для SEO

Как мы уже упоминали, это самый популярный способ использования .htaccess. Перед тем, как настраивать тот или иной вид переадресации, убедитесь, что это действительно необходимо. Например, редирект на страницы со слешем в некоторых CMS настроен по умолчанию. О настройках редиректа для SEO мы писали в блоге.

При настройке 301 редиректов помните о двух правилах:

  1. Избегайте нескольких последовательных перенаправлений — они увеличивают нагрузку на сервер и снижают скорость работы сайта.
  2. Располагайте редиректы от частных к глобальным. Например, сначала переадресация с одной страницы на другую, затем общий редирект на страницы со слешем. Это правило работает не в 100% случаев, поэтому с размещением директив нужно экспериментировать.

1. Настраиваем постраничные 301 редиректы

Это потребуется в следующих случаях:

  • изменилась структура сайта и у страницы поменялся уровень вложенности;
  • страница перестала существовать, но нужно сохранить ее входящий трафик (например, в случае отсутствия товара обычно делают переадресацию на товарную категорию);
  • поменялся URL, что крайне нежелательно, но тоже встречается.

Просто удалить страницу — плохая идея, лучше не отдавать роботу ошибку 404, а перенаправить его на другой URL. В этом случае есть шанс не потерять позиции сайта в выдаче и целевой трафик. Настроить 301 редирект с одной страницы на другую можно при помощи директивы простого перенаправления:

  • — адрес страницы от корня, без протокола и домена. Например, .
  • — полный адрес страницы перенаправления, включая протокол и домен. Например, .

2. Избавляемся от дублей

Каждая страница сайта должна быть доступна только по одному адресу. Для этого должны быть настроены:

  • редирект на страницы со слешем в конце URL или наоборот;
  • главное зеркало — основной адрес сайта в поиске.

Сделать это можно при помощи модуля . В его составе используются специальные команды — директивы сложного перенаправления. Первой командой всегда идет включение преобразования URL:

Переадресация на слеш или наоборот

Настроить ли переадресацию на страницы со слешем или без, в каждом случае нужно решать индивидуально. Если у сайта уже накоплена история в поиске, анализируйте, каких страниц в индексе больше. Для новых сайтов обычно настраивают редирект на слеш. Проверить, не настроена ли переадресация по умолчанию, просто: удалите/добавьте слеш в конце URL. Если страница перезагрузится с новым адресом — мы имеем дубли, требуется настройка. Если URL подменяется — все в порядке. Проверять лучше несколько уровней вложенности.

Код 301 редиректа на страницы без слеша:

3. Настраиваем главное зеркало

Для начала нужно определиться, какой адрес будет являться основным для поиска. SSL-сертификат давно уже мастхэв. Просто установите его и добавьте правило в .htaccess. Не забудьте также прописать его в robots.txt.

Редирект на HTTPS

Определять, с «www» или без будет главное зеркало, можно несколькими способами:

  • добавить сайт в Яндекс.Вебмастер в двух вариантах, в консоли отобразится информация, какой URL поисковик считает главным зеркалом;
  • проанализировать выдачу и посмотреть, каких страниц сайта больше в индексе;
  • для нового ресурса не имеет значения, с «www» или без будет адрес, выбор за вами.

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

Редирект с без www на www

4. Перенаправляем с одного домена на другой

Самая очевидная причина настройки этого редиректа — переадресовать роботов и пользователей на другой адрес при переезде сайта на новый домен. Также им пользуются оптимизаторы для манипуляций ссылочной массой, но дроп-домены и PBN — серые технологии продвижения, которые в рамках этого материала мы затрагивать не будем.

Воспользуйтесь одним из вариантов кода:

или

Не забудьте поменять в коде «mysite1» и «mysite2» на старый и новый домен соответственно.

Как сделать редирект в WordPress

Существует несколько способов — с правкой файла .htaccess (сложнее) и с помощью плагинов (очень легко и просто). В этой записи я поведую вам, как сделать редирект, чем может быть полезен он и посмотрим варианты настройки редиректов на вордпресс с плагинами и без.

Зачем нужен редирект

Редиректы используются при смене домена или адреса сайта.  Это позволяет поисковым роботам и посетителям находить содержимое используя старые адреса, и не терять при этом все внешние ссылки указывающие на старый домен. При смене формата постоянных ссылок (ЧПУ) в WordPress, смена движка CMS, переход сайта с http на протокол https, склейки домена с www и без. Редиректы так же используются для создания упрощенных или укороченных версий некоторых более длинных адресов сайта и т. д..

Какие бывают редиректы

Существует два основных типа:

Редирект 301 (Moved Permanently) — постоянный

Постоянное перенаправление 301

301 является наиболее популярным и используется для перенаправление навсегда. В результате этого процесса старый URL исчезает из выдачи, а новый индексируется поисковиками. Чаще всего SEOшники говорят именно об этом методе. Иногда сервис выдает браузеру ошибку 404 – это значит, что редирект не настроен.

302 (Found) или иногда 307 (Temporary Redirect) — временный

Это перенаправление с одного на другой URL на короткий срок. Посетитель попадает на новую страницу, она не индексируется. Все параметры остаются на исходной страничке и никуда не переносятся

Применять этот вариант переадресации нужно с осторожностью

Он нужен, когда важно оставить предыдущую версию или ссылки, которые размещены

Обратите внимание, что постоянный редирект 301 в будущем можно конечно изменить. Постоянный redirect запоминаются браузерами и ПС на более долгий срок, чем временные

Как сделать 301 редирект в файле .htaccess

Файл конфигурации .htaccess, который находится в корне сайта. В в самое начало файла необходимо внести соответствующую вашему случаю информацию.

Чтобы склеить домен с www на без www. Для постоянного переноса используется код редиректа 301, для временного – 302 или 307. И не забывайте подставлять сои веб-ресурсы.

RewriteCond %{HTTP_HOST} ^www.site\.com$ 
RewriteRule ^(.*)$ http://site.com/$1 

И наоборот без www с www:

Перенаправление с www

RewriteCond %{HTTP_HOST} ^site\.com$ 
RewriteRule ^(.*)$ http://www.site.com/$1 

Какой из вариантов выбрать? Посмотрите: какой вариант находиться в топе и для какого из вариантов больше страниц в индексе.

301 редирект с домена на домен

Переезд на новый домен учитывая пожелания 2-ух основных поисковых систем Яндекс и Google: постраничный 301 редирект со старого сайта на новый. При этом для файла robots.txt редирект не надо делать, а прописать в нем директиву Host на новый домен. Тогда код для настройки редиректа на старом сайте может иметь следующий вид (мне бы так раньше сделать):

RewriteCond %{REQUEST_FILENAME} robots.txt$ 
RewriteRule ^(+) $1 
RewriteCond %{HTTP_HOST} !^www\.site\.com
RewriteRule ^(.*)$ http://www.site.com/$1 
а файл robots.txt для старого сайта:
User-agent: Yandex
Disallow:
Host: newsite.com

Редирект 301 с HTTP на HTTPS

После подключения сертификата-ssl стоит добавить обязательную переадресацию с протокола http на безопасный https, для того, чтобы все ваши соединения были зашифрованы.

Редирект с http на https

RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} 

Редирект с одной страницы на другую:

С одной страницы на другую 301 REDIRECT

Redirect 301 /oldpage http://www.site.com/newpage

Переадресации можно создать любые, я привёл лишь некоторые из них. Если вы не уверены что, сможете правильно добавлять в файл .htaccess нужные записи, то лучше прибегнуть к помощникам. Проще всего на WordPress использовать специальные, для этой цели, плагины.

Как настроить 301 редирект

Настроить переадресацию можно через панель управления вашим хостингом или вручную средствами HTML, PHP, JavaScript.

В настройках конкретного хостинга обычно подробно описано, как сделать редирект через панель управления. Для разных CMS есть специальные плагины для редиректов. Разберем способы для настройки вручную на примере редиректа на сайт с www или без него.

Редирект для Nginx

Для серверов под Nginx нужно использовать файл nginx.config, добавьте код в секцию server. Если вы настроили виртуальные хосты, для каждого хоста нужно редактировать файлы отдельно.

С домена с www на домен без www

server {#...
    if($host~ * www\.(.*)) {
        set $host_without_www $1;
        rewrite ^ (.*) $ http: //$host_without_www$1 permanent;
    }#...
}

С домена без www на домен с www

server {#...
    if($host~ * ^  + \. + $) {
        rewrite ^ (.*) $ $scheme: //www.$host$1 permanent;
    }#...
}

После изменения nginx.config перезапустите nginx с помощью команды «service nginx restart». Проверить, все ли корректно заполнено, можно через команду «nginx -t».

Редирект для Apache

Если вы используете Apache, вам нужен файл .htaccess. Для доступа есть несколько вариантов:

  • Используйте FTP и включите отображение скрытых файлов. Найдите .htaccess в каталоге public_html в папке с названием домена.
  • Откройте панель управления хостингом, включите отображение скрытых файлов и найдите его через Диспетчер файлов.

Скачайте .htaccess, добавьте код редиректа и загрузите файл заново. Если файла .htaccess нет, его нужно создать.

На домен без www

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.site\.ru$ 
RewriteRule ^(.*)$ https://site.ru/https://site.ru/$1 

На домен с www

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^site.ru
RewriteRule (.*) http://www.site.ru/http://www.site.ru/$1 

Редирект через PHP

Действует на уровне сервера. Лучше использовать другой способ, потому что этот работает медленно. Через PHP перенаправление настраивают для сайтов, где редирект нужен на многих, но не на всех страницах.

Файл index.php расположен в корневой папке. Скачайте его и добавьте код или отредактируйте прямо в диспетчере файлов в панели управления хостингом.

На домен без www

На домен с www

Редирект через HTML

Редирект через HTML-код медленнее, он работает на стороне браузера. Код нужно добавить между тегами и страницы, с которой нужно перенаправить. В параметре content=»» указывают задержку по времени.

На домен без www

На домен с www

Редирект через JavaScript

Редирект настраивают и с помощью JavaScript, он работает на стороне браузера, как и HTML. Это медленный способ и не сработает, если у пользователя в браузере отключен JavaScript. Его обычно настраивают для редиректов с задержкой, если такое требуется.

Код для редиректа нужно добавить между и в код первой исходной страницы.

На домен без www

Для задержки:

На домен с www

Через cPanel

cPanel — это платная панель управления веб-хостингом. В ней тоже можно настроить редиректы, причем не используя вводы кодов. Во вкладке «Домены» есть раздел «Перенаправления», там нужно настроить редирект.

На домен без www

  1. В списке выберите нужный домен.
  2. В поле «Перенаправляет на» пропишите его с префиксом http://.
  3. Поставьте отметку у «Перенаправлять только с www»

На домен с www

  1. В списке выберите нужный домен.
  2. В поле «Перенаправляет на» пропишите его с префиксом http://www.
  3. Поставьте отметку у «Не перенаправлять www»

Обеспечиваем безопасность сайта

Файл .htaccess предоставляет большие возможности для защиты сайта от вредоносных скриптов, кражи контента, DOS-атак. Также можно защитить доступ к определенным файлам и разделам.

5. Запрещаем загрузку картинок с вашего сайта

Существуют технологии, при которых сторонние сайты используют контент, в том числе изображения, загружая его прямо с вашего хостинга путем хотлинков (прямых ссылок на файлы). Это не только обидно и нарушает авторские права, но и создает ненужную дополнительную нагрузку на ваш сервер.

Осадите воришек при помощи этого кода:

Заменяете «mysite.com» на адрес вашего сайта и создаете изображение с любым сообщением о том, что красть чужие картинки нехорошо, по адресу . Это изображение и будет показано на стороннем ресурсе.

6. Запрещаем доступ

Целым группам нежелательных гостей с определенных IP-адресов, подсетей, а также вредоносным ботам можно запретить доступ на ваш ресурс при помощи следующих директив в .htaccess.

Для нежелательных User Agents (ботов)

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

Частный случай такого запрета — запрет для поисковых роботов. Если вас почему-то не устраивает правило в robots.txt, можно запретить доступ, например, роботу Google при помощи таких директив:

Для подсети

Вписываем маску сети в строку после «deny from».

Спамные IP-адреса можно вычислить в логах сервера или с помощью сервисов статистики. В административной панели WordPress отображаются IP-адреса комментаторов:

К определенному файлу

Вписываем название файла вместо «myfile.html» в примере. Пользователю будет показана ошибка 403 — «доступ запрещен».

Не лишним будет ограничить доступ к самому файлу .htaccess из соображений безопасности, а также рекомендуем после настройки всех правил поставить на файл права доступа 444.

Для сайтов на WordPress важно ограничить доступ к файлу wp-config.php, т.к. в нем содержится информация о базе данных:

Для пользователей, пришедших с определенного сайта

Вы можете заблокировать посетителей с нежелательных ресурсов (например, со взрослым или шокирующим контентом).

7. Защищаем доступ к определенному файлу или папке

Для начала создайте файл .htpasswd, пропишите в нем логины и пароли в формате user:password и разместите в корне сайта. В целях безопасности пароли лучше зашифровать. Это можно сделать при помощи специальных сервисов генерации записей, например, такого. Следующим шагом добавьте директории или файлы в .htaccess:

Защита паролем папки

Вместо «/pub/home/.htpasswd» укажите путь до файла .htpasswd от корня сервера. Рекомендуем проверить доступ после установки кода.

8. Запрещаем выполнение вредоносных скриптов

Следующая группа директив защищает сайт от так называемых «скриптовых инъекций» — инструмента хакерских атак:

Все попытки причинить вред вашему ресурсу будут перенаправлены на страницу ошибки 403 «доступ запрещен».

9. Защищаем сайт от DOS-атак

Один из способов защиты — ограничить максимально допустимый размер запроса (ограничение отсутствует по умолчанию).

Для этого прописываем в .htaccess размер загружаемых файлов в байтах:

В примере указан размер 10 Мбайт. Если вы хотите запретить загрузку файлов, пропишите число меньше 1 Мбайт (1048576 байт).

Также можно изучить возможности директив LimitRequestFields, LimitRequestFieldSize и LimitRequestLine в официальной документации.

Склейка зеркал сайта: 301 редирект c www на без www и наоборот

Существует несколько вариантов обращения к сайту — с www и без www (например, pingoblog.ru и www.pingoblog.ru). Пользователю все равно, как именно вводить URL, так как он в любом случае попадет на одну и ту же страницу. Иначе дело обстоит с поисковыми системами. Они расценивают www.site.ru и site.ru, как два совершенно разных домена (что тянется из глубин истории всемирной сети, когда это действительно было так).

Эти дубли мешают индексации сайта и продвижению в целом, так как, во-первых, это банальные дубли страниц (уж извиняюсь за повторение) и, во-вторых, входящие ссылки будут также укладываться в разные корзины. Тоже самое касается и дублей главной страницы: site.ru, site.ru/index.html, site.ru/index.php и т.д. По этой причине еще на этапе создания сайта желательно позаботиться об этом вопросе и одну из версий сайта (например, c www) переадресовать на другую (например, без www). Если момент был упущен, то тут нет ничего страшного.

Рассмотрим процесс склейки зеркал с помощью 301 редиректа поэтапно.

1. Определяем основной домен, выбранный для индексации поисковыми системами.

Основное зеркало можно легко определить по результатам поисковой выдачи Яндекс и . Вводим название домена и смотрим, какой адрес отобразится: www.site.ru или site.ru. Если же сайт еще не проиндексирован, то выбираем его по своему усмотрению. Если в Google и Yandex основные домены разные, то лучше оставьте Яндексовский.

2. Прописываем 301 редирект в .htaccess.

Находим в корне FTP сайта файл .htaccess, скачиваем и открываем в блокноте, а затем вносим в него необходимые изменения. Первый вариант — 301 редирект домена без www на с www:

Options +FollowSymLinks
RewriteEngine On
RewriteEngine off
RewriteCond %{HTTP_HOST} ^site.ru$
RewriteRule (.*) http://www.site.ru/$1 

Обратная ситуация — с www на без www:

Options +FollowSymLinks
RewriteEngine On
RewriteEngine off
RewriteCond %{HTTP_HOST} ^www.site.ru$
RewriteRule (.*) http://site.ru/$1 

После завершения редактирования, сохраняем файл и загружаем его в корневую папку FTP с перезаписью.

Опционально можно сразу же позаботиться о дублях главной страницы вида index.php и index.html, добавим ниже следующий код:

RewriteCond %{THE_REQUEST} ^{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ http://www.site.ru/ 
RewriteCond %{THE_REQUEST} ^{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://www.site.ru/ 

Ну и, опять же, если у вас site.ru:

RewriteCond %{THE_REQUEST} ^{3,9}\ /index\.html\ HTTP/
RewriteRule ^index\.html$ http://site.ru/ 
RewriteCond %{THE_REQUEST} ^{3,9}\ /index\.php\ HTTP/
RewriteRule ^index\.php$ http://site.ru/ 

3. Настройка robots.txt

Увидели знакомую директиву, оставляющей robots.txt нетронутым? Все верно, вносим изменение в robots.txt:

Host: основное-зеркало.ru

4. Проверяем работу сайта.

Вводим тот адрес, который с которого мы проставляли редирект, например www.site.ru или site.ru/index.html и если при заходе на него происходит переход на site.ru, то всё настроено правильно.

5. Настройка Yandex и Google вебмастер.

Дополнительно применяем соответствующие настройки в личных кабинетах поисковых систем. В случае с Yandex:

Яндекс Webmaster

Ну и для Google:

Google Webmaster

Материал обновлен: 12 января 2016 года.

Зачем это может понадобиться?

Это требуется очень часто, вот, например:

  • вы переносите свой ресурс на более удачный домен (с serdrfnjgkdr.ru на bestsite.ru);
  • если вы решили поспекулировать и выгодно продать свой адрес, а сами – зарегистрировать другой проект и сделать на него редирект;
  • если вы, следуя моему совету, зарегистрировали еще парочку доменных имен, на случай, если юзеры допустят ошибку в строке (yoursite.com, your-site.com, yours1te.com и т.д.). style=»display:block» data-ad-client=»ca-pub-8243622403449707″ data-ad-slot=»1319308473″ data-ad-format=»auto»>

Кроме того, если у вас есть заработанный непосильным трудом PR и ТИЦ, то их тоже хотелось бы перевести на новый интернет-портал. Ведь не терять же такие важные показатели (они, между прочим, при монетизации принесут много денег).

Также, это сделать нужно при открытии двух ресурсов: например, www_yoursite.ru и yoursite.ru. Поисковые алгоритмы воспринимают эти два домена как разные порталы, поэтому поставить переадресацию с одного на другой просто необходимо (например, с www***/blog на ***.ru/blog). Иначе ТИЦ и PR будут зарабатываться на каждом домене отдельно, да и статистика также будет вестись порознь. Вот так глупая формальность может принести двойную работу и поделить надвое ваши успехи.

Решение

Оно очень простое: открываем файл .htaccess в корневой папке на старом портале, если такого документа нет, то создаем его. Если хотим направить с ввв. домена на основной ресурс, то прописываем в файле такие строки.

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

Не забудьте вместо http://www.% вставить имя вашего нового портала.

Таким образом мы решили проблему перенаправления домена без www  на домен с www.

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

Настраиваем отображение сайта

Посмотрим, что можно сделать с отображением всего ресурса или его разделов в браузерах пользователей при помощи .htaccess.

10. Заменяем индексный файл

Индексный файл — тот, что открывается по умолчанию при обращении к определенному каталогу. Обычно они называются: index.html, index.htm, index.php, index.phtml, index.shtml, default.htm, default.html.

Вот как это выглядит в структуре каталога:

Чтобы заменить этот файл на любой другой, размещаете в каталоге .htaccess и добавляете эту команду:

Вместо «hello.html» вписывайте адрес желаемого файла.

Можно задать последовательность файлов, которые будут открываться в указанном порядке, если один из них будет недоступен:

11. Добавляем или убираем html в конце URL

Сохранять или убирать расширение файлов в URL — дело вкуса каждого оптимизатора. Достоверных исследований влияния расширений в адресах на ранжирование ресурса нет, но каждый вебмастер имеет свое мнение по этому поводу.

Чтобы убрать .html:

Этими же директивами можно добавить/убрать расширение php.

12. Настраиваем кодировку

Чтобы избежать ошибок в отображении ресурса браузером, нужно сообщить ему, в какой кодировке создан сайт. Самые популярные:

  • UTF-8 — универсальная
  • Windows-1251 — кириллица
  • Windows-1250 — для Центральной Европы
  • Windows-1252 — для Западной Европы
  • KOI8-R — кириллица (КОИ8-Р)

Чаще всего используют UTF-8 и Windows-1251.

Если кодировка не указана в метатеге каждой страницы, можно задать ее через .htaccess.

Пример директивы, которая задает для файла кодировку UTF-8:

А такая команда означает, что все загружаемые на сервер файлы будут преобразованы в Windows-1251:

В примерах приведены разные кодировки, но в рамках одного сайта кодировки в этих директивах должны совпадать.

13. Создаем кастомные страницы ошибок

При помощи правил в .htaccess можно настроить отображение специально созданных страниц для самых популярных ошибок, например:

Перед тем, как прописывать директивы, создайте в корне сайта папку error и разместите туда соответствующие файлы для страниц ошибок.

Зачем это нужно? Например, чтобы не потерять пользователя на странице 404, а дать ему возможность перейти в другие разделы сайта:

Как настроить 301 редирект в файле .htaccess

Сам файл .htaccess располагается в главной директории сайта

Работа с ним ведется крайне осторожно, при любом изменении сохраняйте резервную копию. Одна ошибка в написании правила приведет к непредвиденной ошибке на сайте

Потом будет сложно установить причину банальной ошибки 500 (Internal Server Error). Само редактирование ведется с помощью любого текстового редактора, обязательно с поддержкой кодировки UTF -8 (формат преобразования Юникода).

Основная функция, которая указывает серверу на наличие правил перенаправления устанавливается первой.Все последующие правила пишутся после нее:

Redirect 301 непосредственно относящийся к доменному имени и сайту в целом

К таким перенаправлениям можно отнести популярные редиректы:

  1. С WWW и обратно — для указания зеркала;
  2. Домена на домен или множества доменов на основной;
  3. С HTTPS на HTTP и обратно, для указания предпочтительной версии;
  4. Непосредственно полный перенос проекта на новый домен;

Это наиболее востребованные глобальные редиректы, которые относятся к доменному имени и сайту. Благодаря таким правилам все переходы и обозначения проходят плавно и безболезненно.  Одна из самых востребованных для поискового продвижения. Распространенное  перенаправление с домена www на без www. Необходимо для указания главного зеркала поисковым системам.

Пример обратного перенаправления:

Для тех, кто использует HTTPS:

Осуществляется перенаправление с одного доменного имени на другое.

Для обладателей доменного имени в зоне РФ:

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
HOSTBOARD.RU
Добавить комментарий