Необходимость в перенаправлении запросов пользователей на практике встречается довольно часто. Как известно, реализовать перенаправление можно несколькими способами. В данной заметке мы рассмотрим перенаправление запросов с помощью файла htaccess.
Для начала работы сделайте резервную копию файла .htaccess если он есть. Если его нет, создайте новый файл. После этого можно приступать к редактированию файла.
Как известно в момент перенаправления в некоторых случаях так же желательно отправлять код в заголовке, который дает понять узлу, по какой причине его перенаправляют.
Первый вариант перенаправления с кодом 301, согласно протоколу http означает, что запрашиваемый ресурс перемещен окончательно на новое местоположение. Так на нашем сайте ранее публиковалась статья о том, как сделать 301-редирект в htaccess с «www.» на без «www.», делается это, как правило, для поисковых систем.
Редирект 301 (перемещен навсегда):
Redirect 301 / http://new.example.com/
В этом случае все запросы к директории, где находится файл .htaccess будут перенаправлены на другой домен. При этом код заголовка ответа будет 301.
Редирект 302 (временно перемещен):
Redirect 302 / http://new.exapmle.com/
По аналогии, как и с 301 редиректом, только тут указывается код 302, что означает: ресурс временно перемещен. В общем, с таким видом перенаправления вроде всё ясно, теперь давайте рассмотрим другие виды перенаправлений, к примеру, перенаправление от одной страницы на другую директорию, стороннего домена.
Редирект от файла index.html на другую директорию:
Redirect /index.html http://new.example.com/newdir/
Получается, если мы делаем такое перенаправление, то при запросе index.html мы будем перенаправлены на директорию /newdir которая находится на домене new.example.com.
Таким же образом делается перенаправление с одного файла на другой.
Редирект с одного файла на другой:
Redirect /olddir/oldfile.html http://new.example.com/newdir/newfile.html
Теперь перенаправление на файл (обработчик запросов), который должен загружаться по умолчанию при открытии директории в браузере.
DirectoryIndex index.html
Хотелось бы отметить то, что сегодня повсеместно практикуются концепция единой точки входа, иными словами обработка запросов в одном файле, которая имеет ряд преимуществ в разработке сложных масштабируемых проектов.
Кроме того, для работы всех перенаправлений, указанных выше Apache использует модуль mod_rewrite, который обычно есть по умолчанию при развертывании Apache.
которая находиться на домене new.example.com
к директории, где находиться файл
глаголы в цитатах пишутся без мягкого знака
спасибо, исправил!