Htaccess редирект — как настроить?

загрузка...

Порой вебмастера решаются на такую затею, как перенаправление своего сайта через файл htaccess или через php. Осуществить эту задачу можно множеством способов, потому в Интернете образовался ни один лагерь, каждый из которых поддерживает тот или иной редирект. В данной статье вы узнаете, для чего вообще нужна переадресация своего сайта на страницу или другой домен, как реализовать редирект 301 и 302 через htaccess и многое другое, связанной с перенаправлением веб-ресурса.

Зачем вебмастерам нужна переадресация сайта

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

Кроме того, перенаправление сайта используют и для более коварных целей. Некоторые при помощи этого лишь набивают рейтинг сайта, делая на него перенаправление.

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

Но не в любом случае эту затею можно назвать выгодной для сайта!

Какую версию редиректа использовать: 301 или 302

Эти цифры нужны, чтобы объяснить поисковым системам, что произошло с текущей страницей. Есть и прочие цифры. Например, цифра 300 обозначает мультивыборочную переадресацию, а 306 говорит поисковикам, что затребованной страницы уже не существует. Разумеется, такие редиректы совсем невыгодны для сайта, потому лучше использовать другую версию.

загрузка...

В Интернете ходит масса слухов по поводу прелестей 301 редиректа и минусов 302. Вебмастера твердо уверены, что 301 редирект лучше, чем 302, и что «вторую» версию переадресации лучше не ставить, не то сайт потеряет в позициях. Но на деле все оказывается не так — с помощью 302 редиректа вебмастерам лучше удается сохранять позиции в выдаче для сайта, чем через 301.

Разница в том, что один редирект объясняет поисковой системе, что сайт переехал на другой домен навсегда, а другой — что временно. Тот, который говорит, что навсегда — это 301-й редирект. Он толкует поисковикам: «Redirect permanent», что означает постоянный редирект. А другой, 302 редирект, нужен для обозначения временного переезда сайта на другой домен. Таким образом, видя не 301, а другую версию редиректа, поисковик сохраняет старые страницы в выдаче, потому что по «словам» файла htaccess, сайт скоро восстановится по старой ссылке.

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

Другую версию редиректа для временного перенаправления рекомендуется использовать, если на сайте ведутся какие-либо технические работы, если нужно передать трафик с одной страницы на другую, если хотите показать какую-нибудь дополнительную информацию пользователям и для других временных целей. Учтите, что сайт не теряет позиции при 302 редиректе, и даже если вы будете дублировать страницы, поисковик на это не будет обращать внимание, пока активирован редирект.

Что касается мифов, которые ранее дурманили головы вебмастеров по поводу вреда 302 редиректа, сейчас они стали полностью не актуальны. Один из таких мифов утверждал, что использование 302 версии редиректа для того, чтобы омолодить сайт и избежать возрастного фильтра Гугла, может через полгода полностью его потопить. Но дело в том, что такого фильтра, возможно, и не существовало вовсе! А все опасения вебмастеров использовать какой-либо редирект, кроме 301, — это лишь страх случайно утопить свой сайт от незнания алгоритма попадания в выдачу. И поскольку этот алгоритм меняется ежедневно, нельзя сказать наверняка, что тот или иной редирект лучше — в разных случаях они по-своему хороши.

Как выгодно использовать 302 редирект

Пока что обойдем стороной «Permanent redirect» и разберем случаи, в которых использовать 302 редирект наиболее выгодно. Для начала представьте, что у вас сайт, посвященный мобильным телефонам. И у вас есть страница, куда пользователи приходят читать о новинках в этой сфере. Вы можете временно заменить эту страницу на другую, которая посвящена обзору новой модели телефона. В итоге, люди будут интересоваться новыми телефонами и попадут на страницу со свежо написанным обзором, которая в действительности существует отдельно. Преимущество 302 редиректа в том, что это не будет считаться дублированием контента. Потом через пару дней вы сможете сменить страницу перенаправления с одной на другую, таким образом улучшая индексацию разных частей сайта.

Если у вас сайт с авторским меню, которое постоянно обновляется, то временный редирект 302 — это идеальное решение для вашего меню. Когда пользователи будут заходить в меню ресторана через сайт, редирект их перенаправит на текущее меню заведения, которое актуально на день или два. Это куда удобнее, чем загружать полное меню в PDF-формате, в котором легко заблудиться. Кроме того, в ресторане станет меньше отказов, потому что люди будут заказывать только то, что в нем есть на самом деле!

Подобных примеров можно привести тысячи! Практически любой сайт рано или поздно нуждается в том, чтобы временно была поставлена переадресация с одной страницы на другую. И сложно себе представить лучший метод, чем 302 редирект. Теперь разберем, как сделать редирект.

Как добавить редирект на новую страницу и домен через htaccess

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

Наиболее банальный редирект будет включать следующую строку в файле htaccess:
[css]
Redirect 301 /old_page/ http://site.ru/new_page/
[/css]
Пишется эта строка под функцией RewriteEngine on. Если вы хотите установить 302 редирект, то поменяйте цифру в указанной строке. В итоге, будет активирована переадресация со страницы /old_page на страницу /new_page.

Многие оптимизаторы рекомендуют установить переадресацию на случай, если пользователи заходят на страницу index,а не на главную. Существует index в формате php, и index в виде html. И тот, и тот index перенаправляется на главную абсолютно одинаково. Для начала вам нужно прописать строку RewriteEngine On. Под ней через команду RewriteCond укажите строку следующего вида:
[css]
%{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP
[/css]
А затем еще ниже добавьте правило RewriteRule, которое будет иметь такой вид:
[css]
^index\.php$ http://domen.ru/ [R=301,L]
[/css]

Указанные три строчки будут перенаправлять пользователей, которые зашли на index на главную страницу ресурса без index, а просто http://domen.ru/. Если вы хотите прописать команду для index не php, а html, то замените .php на .html в строке.

Теперь разберем, как сделать редирект для склейки зеркал сайта, или URL redirect. Это еще одна проблема большинства сайтов в Интернете. Дело в том, что изначально ваш ресурс доступен не с одной ссылки, а с двух — зайти на главную можно как с www, так и без, как и на любую другую страницу сайта. С помощью htaccess вы решите эту проблему. Вам нужно будет точно так же, как описано выше, прописать три строки, только изменить содержание второй и третье строчек после команд RewriteCond и RewriteRule. В первом случае пропишите
[css]
%{HTTP_HOST} ^www.domen\.ru$ [NC]
[/css]
а во второй строке —
[css]
^(.*)$ http://domen.ru/$1 [R=301,L]
[/css]
В итоге, с помощью указанных строк будет активирована замена адреса с www на домен без www. Чтобы сделать наоборот, уберите в первой строке www., а во второй добавьте.

Как перенаправить пользователей на мобильную версию сайта

Настройка переадресации на мобильную версию ресурса возможна через php, htaccess и JavaScript. Разберем особенности создания такого редиректа, и как проходит его настройка.

Чтобы сделать подобную переадресацию через php, нужно изъять название юзер-агента устройства пользователя, который зашел на сайт. Php может это делать, потому многие выбирают именно такой способ создать редирект на мобильную версию сайта. Проблема только в том, что рынок мобильных устройств настолько разросся, что их в последнее время стало уж очень много, потому вам нужно будет добавить целую коллекцию юзер-агентов в ваш код php. Оформить все это нужно будет в виде условия if, чтобы в случае обнаружения мобильного юзер-агента, срабатывал редирект php. Код нужно будет разместить в файле index в разделе header.

Настройка редиректа на мобильную версию сайта через htaccess проходит аналогичным способом, как и написание кода php в index, только с другими правилами написания. В функции RewriteCond вам нужно будет указать все возможные названия юзер-агентов мобильных устройств, а в RewriteRule прописать ссылку на мобильную версию ресурса.

Добавить все названия юзер-агентов вам поможет только опыт. Со временем, просматривая логи, вы сможете добавить все наименования в index при помощи php, либо в htaccess в строку RewriteCond. Что касается перенаправления при помощи JavaScript, то его рекомендуется использовать только в том случае, если у вас нет возможности зайти на сервер сайта и отредактировать htaccess, или вставить фрагмент php внутри файла index.

0011

Как настроить файл htaccess для ошибки 404

Страница с ошибкой 404 знакома любому обывателю Интернета. Такие страницы часто попадаются в Гугле, и со стороны вебмастеров глупо игнорировать тот факт, что их страница с 404 ошибкой по-прежнему держит нормальную позицию в выдаче. А сообщает цифра 404 о проблемах с сервером — что какие-либо данные не найдены на нем. Это может означать, что сайт переехал на другой домен или страница была удалена.

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

[css]
ErrorDocument 404 http://домен_куда_перенаправлять.ru/
[/css]

Но будет еще лучше, если вы не просто перенаправите пользователей на другую страницу, но и объясните им, почему такое случилось. Для этого создайте специальную страницу с объяснением 404 ошибки. А уже на ней можете активировать перенаправление через некоторое время, чтобы пользователи успели прочитать приведенную информацию.

Как настроить перенаправление сайта с https на http

Порой с сайтом в выдаче случаются непредсказуемые вещи. У некоторых вебмастеров нет SSL-сертификата, то есть страниц с протоколом https, но тем не менее, в поиске http заменен на https. Как же таким вебмастерам восстановить http? В таком случае также поможет редирект. Вам нужно будет перенаправить страницы с https на http, или наоборот — в зависимости от потребностей.

Дело в том, что не все сайты работают с протоколом https так же хорошо, как и http. Если ваш хостинг такого не поддерживает, то сайт с https будет терять стилевое оформление и совсем не будет похож на тот же сайт, открытый через стандартный протокол http. Чтобы убрать этот недочет https, нужно добавить перенаправление на http в файле htaccess по аналогии с редиректом сайта с www и без. Чтобы добавить такой редирект https на http, пропишите в строке RewriteCond следующую команду:
[css]
%{HTTPS} on
[/css]
А в RewriteRule добавьте правило:
[css]
^.*$ http://%{SERVER_NAME}%{REQUEST_URI}
[/css]
Этого достаточно, чтобы все запросы на сайт с https перенаправлялись на http.

Если у вас не получается добавить переадресацию с протокола https на http, то ищите другие способы решения проблемы. Попробуйте написать в техническую поддержку на хостинге, чтобы они помогли решить возникшую ситуацию. Либо попытайтесь добавить SSL-сертификаты, чтобы защищенный протокол https работал на вашем сайте корректно, и не коверкал дизайн ресурса. Все-таки, есть смысл активировать шифрованное соединение на сайте, так как работать с ним намного безопаснее, чем со стандартным протоколом.

Как добавить переадресацию при помощи php

Необязательно прописывать переадресацию именно в файле htaccess. Сделать это можно и при помощи кода php. Но учтите, что такое перенаправление совсем по-другому воспринимается поисковыми системами, в отличии от изменений в файле htaccess. Черные методы продвижения с использование переадресаций с одного домена на другой без причины уже давно не действуют. Подобные сайты быстро загоняют под фильтры и выбрасывают с выдачи. Потому не вздумайте использовать переадресацию при помощи php в корыстных и нечестных целях. Делайте это только для того, чтобы улучшить работу сайта и опыт пользователей на вашем ресурсе.

Добавляется переадресация при помощи языка php благодаря функции php header. Вам нужно будет прописать команду header, а в скобках после нее без пробелов укажите (Location: ‘.$url), то есть пропишите локацию, куда должна быть направлена переадресация. Например, укажите страницу вашего ресурса, либо пропишите новое доменное имя сайта, куда приведет редирект.

Используйте перенаправление трафика разумно и ни в коем случае не злоупотребляйте этой функцией. Пользователи — далеко не глупые люди, и если вы будете ими манипулировать без причины при помощи редиректов, они быстро потеряют доверие к вашему ресурсу. Лучше используйте честные способы оптимизации веб-сайта при помощи качественных статей и полезных функций! А редирект оставьте на экстренный случай, наподобие ошибки 404 или наличия нескольких зеркал.

Похожие статьи

ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here