Перенаправление URL (англ. URL redirection, URL forwarding, domain redirection, domain forwarding) — техника, применяемая для того, чтобы веб-страница была доступна под несколькими URL.
Слово редирект применяется в значениях:
Это абзац о склеивании сайтов, а не о настройке перенаправления с http на https!!
Если вы выбирали современного регистратора доменных имен, тогда вы можете использовать функцию URL Redirect Record в настройках DNS для создания 301, 302 ответа и не заморачиваться с настройкой редиректов. Ниже таблица какой сайт будет индексироваться при применении URL Redirect Record.
P.S. Для тех кто любит разбираться, сервис URL Redirect Record - это не функция DNS, это сам хостинг провайдер создает сайт и редиректит.
Сервис проверки HTTP заголовков сайта HTTP Status Codes Checker.
Если вы хотите запретить использование HTTP, то самым разумным будет перенаправлять все HTTP запросы к страницам на их HTTPS адрес. Чтобы добиться этого в Apache можно, например, организовать перенаправление с помощью mod_rewrite. Для этого сначала необходимо его активировать:
sudo a2enmod rewrite sudo service apache2 restart
Затем изменить файл /etc/apache2/sites-enabled/000-default, отвечающий за виртуальный хост по умолчанию для HTTP запросов. В этот файл надо добавить внутрь блока
<VirtualHost *:80> ... </VirtualHost>
строчки:
RewriteEngine On RewriteCond %{HTTPS} =off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [END,QSA,R=permanent]
При этом все настройки директорий можно удалить, поскольку по HTTP на ваши сайты всё равно будет не попасть. Всё, теперь ещё раз перезапустите Apache и убедитесь, что при заходе по HTTP вы автоматически перенаправляетесь на HTTPS страницу.
RewriteEngine On RewriteCond %{HTTP_HOST} ^www.example.org$ [NC] RewriteRule ^(.*)$ http://example.org/$1 [R=301,L]
Если все работает в Server Response должен прийти ответ(заголовок) Коды состояния HTTP. Методы и структура протокола HTTP
HTTP/1.1 301 Moved Permanently
на запрос домена с www.
RewriteEngine On RewriteCond %{HTTP_HOST} ^example.org RewriteRule (.*) http://www.example.org/$1 [R=301,L]
Redirect / http://www.newsite.ru
или
Redirect 301 / https://www.newsite.ru
Redirect 301 /company http://www.newsite.com/newcompany Redirect 301 /forum http://www.newsite.com/newforum
При запросе страниц из каталогов company и forum будет произведено перенаправление на новые адреса.
В ряде случаем полезно использовать такой редирект В ряде случаев полезна переадресация через
RewriteRule ^dir /dir-new/$1 [R=301,L]
вместо директивы Redirect
HTML редирект – это соответствующий мета-тег с некоторыми параметрами и значениями. Синтаксис
<meta http-equiv="refresh" content="seconds;URL-to-redirect">
Мета-тег с редиректом прописывается в секции <head> </head>. Параметр content="" со значением 1 определяет перенаправление через 1 секунду и т.п. После URL= вводится адрес перенаправления с текущей страницы.
Рабочий пример метаредиректа. Посетитель не заметит что произошло перенаправление, так как мы установим для этого задержку в ноль секунд.