2011-06-29 96 views
2

我在控制兩個動作:ZF重定向器。爲什麼重定向頁面沒有得到HTTP_REFERER?

function indexAction() 
{ 
    $this->_redirect('/index/welcome/'); 
} 

function welcomeAction() 
{ 
    echo isset($_SERVER['HTTP_REFERER']); 
} 

重定向後,它總是返回NULL。如何解決它?

+0

我認爲你需要手動設置一個會話變量來存儲引用鏈接的URL。 – Marcin

+0

其實我做到了。思考這是目前解決它的一種方法) – Anthony

回答

1

重定向(301,303)適用於HTTP級別而不是HTML級別,即瀏覽器不知道重定向,但更新URL的信息除外。

0

這可能是:
功能welcomeAction() { 回波isset($ _ SERVER [ 'HTTP_REFERER'])? $ _SERVER ['HTTP_REFERER']:''; }

+0

我試過它在diff方式) – Anthony

0

我不認爲它指定客戶端必須發送Referer,所以很可能您的瀏覽器根本不會發送帶有重定向請求的Referer。您可以使用FireBug或其他可讓您檢查請求標頭的工具來檢查。在RFC 2616中描述了Referer標題。

+0

這很奇怪。因爲在另一個頁面中它是完美的。 – Anthony

+0

查看從服務器發送到客戶端的標題,反之亦然。 –