У меня есть два действия в контроллере:
function indexAction() { $this->_redirect('/index/welcome/'); } function welcomeAction() { echo isset($_SERVER['HTTP_REFERER']); }
После перенаправления всегда возвращается ноль. Как это исправить?
Redirect (301,303) работает на уровне HTTP, а не на уровне HTML, т. Е. Браузер не знает о перенаправлении, за исключением информации для обновления URL.
Я не думаю, что указано, что клиент должен отправить Referer, поэтому весьма вероятно, что ваш браузер просто не отправит Referer с перенаправленным запросом.Вы можете проверить это с помощью FireBug или другого инструмента, который позволяет вам проверять заголовки запроса.Заголовок Referer описан в RFC 2616 .
Referer
Это может быть: function welcomeAction () {echo isset ($ _ SERVER ['HTTP_REFERER'])?$ _SERVER ['HTTP_REFERER']: '';}