Для чего используется redirect?
$remember = (bool) $this->input->post('remember');
if ($this->ion_auth->login($this->input->post('identity'), $this->input->post('password'), $remember))
{
redirect('admin', 'refresh');
}
else
{
$this->session->set_flashdata('message',$this->ion_auth->errors());
redirect('admin/user/login', 'refresh');
}
Смотри пример. Если авторизация прошла, перенаправляем пользователя на страницу admin. Если нет, то перенаправляем на admin/user/login. Другими словами redirect - это перенаправление.
Причин для использования редиректа может быть масса: например редирект с одного сайта на другой или с одной страницы на другую. К примеру ваш сайт сменил домен old.domain.com и вы бы хотели чтобы люди при обращении к нему попадали на new.domain.com Эти редиректы самые распространенные и имеют код 301
Еще один вид популярного редиректа 404 - это когда пользователь пытается достучаться до несуществующего адреса на вашем сайте, в таком случае все пользователи будут направлены на страницу "Извините но такой странице не существует"
Не менее распространенный редирект 403 - данный код означает, что пользователь не имеет прав доступа к данной странице.
Еще пример: пользователя надо отправить на определенную страницу сайта после определенных действий. К примеру пользователь оплатил заказ и мы делаем редирект на страницу "Спасибо за вашу покупку"
И таких вавриантов может быть масса.
Более подробно вы можете почитать тут
Важным моментом является то что если мы осуществляем редирект на php то не должно быть отправленно никаких данных пользователю для вывода, даже пустой строки иначе редирект не произойдет. Почитать можно тут
Сборка персонального компьютера от Artline: умный выбор для современных пользователей