Как перенаправить пользователя?

3 ноября 2014 г. Просмотров: 679
Основой навигации в интернете являются гиперссылки. По ним пользователи переходят от страницы к странице, от сайта к сайту. Как правило, именно пользователь решает, когда осуществить переход. Однако иногда после совершения определенных действий на странице нужно автоматически перенаправить пользователя на другую страницу сайта или даже на другой ресурс.

Вам понадобится

  • - возможность редактирования скриптов сайта;
  • - возможность редактирования файлов .htaccess;
  • - возможность изменения шаблонов страниц;
  • - возможность изменения html-кода страниц.

Инструкция

  • Перенаправьте пользователя на другой ресурс путем добавления поля Location в заголовок HTTP-ответа сервера. Модифицируйте скрипты системы управления содержимым или сконфигурируйте сервер (например, путем активации модуля ModRewrite Apache и внесением соответствующих директив в файл .htaccess) таким образом, чтобы в нужных случаях поле Location присутствовало в заголовке.Содержимым поля Location заголовка HTTP-ответа сервера должен являться абсолютный URI ресурса, на который осуществляется перенаправление. В большинстве случаев пользовательские агенты осуществляют немедленную загрузку данных указанного ресурса, даже если код ответа сервера указывает на наличие у сообщения тела. Однако при осуществлении перенаправления имеет смысл ограничиваться передачей лишь заголовка ответа, содержащего только поле статуса с корректным кодом и поле Location.Выберите код ответа из диапазона значений 301-303 согласно RFC 2616. Сформируйте минимальный заголовок и передайте его пользовательскому агенту. Например, на языке PHP код формирования заголовка может выглядеть так:header('HTTP/1.0 303');header('Location: http://codeguru.ru'));Обратите внимание на то, что при использовании ModRewrite можно также выбрать предпочитаемый код ответа.
  • Осуществите перенаправление пользователя, используя мета-тег с атрибутом http-equiv, установленным в значение refresh. Мета-теги добавляются в раздел HEAD документа. Содержимым атрибута content данного тега должна являться строка, состоящая из числа, задающего время задержки (в секундах) перед перенаправлением и URI целевого ресурса (абсолютного или относительного), отделенного от числа запятой. Например, для осуществления перенаправления пользователя через 10 секунд после загрузки страницы, можно использовать следующий код:Подобный метод часто используется для создания страниц-заставок, отображающихся после совершения пользователем определенных действий (например, страница с сообщением после добавления ответа на форуме).
  • Реализуйте перенаправление при помощи клиентского сценария. Используйте возможности изменения свойств location объектов window и document. Простейший пример HTML-кода, определяющего фрагмент внедренного в документ сценария на языке JavaScript, может выглядеть так:Данный метод перенаправления целесообразно комбинировать с тем, что был описан во втором шаге, производя изменение свойства location в функции-обработчике события таймера.
  • Оцените статью!