2012-03-08 62 views
4

我的CMS鏈接到其他網站,爲了方便,我想隱藏引用,以便其他網站不會看到我的CMS的目錄和查詢字符串。我現在將CMS鏈接到我的服務器上的PHP文件,然後通過header()重定向到鏈接,但引用者仍然來自我的CMS,而不是鏈接PHP。此外...PHP:更改引用標頭()

header("Referer: nowhere"); 
header("Location: $_REQUEST[urltolinkto]"); 

...似乎沒有改變任何東西。無論我作爲引用者放置什麼內容,始終都是CMS中用戶實際點擊鏈接的人。

引用者可以更改(鏈接PHP),還是我必須使用JavaScript或元刷新?

+0

可能的重複http://stackoverflow.com/questions/6428762/hide-referrer-on-click – MrCode 2012-03-08 11:41:14

回答

8

Referer頭是瀏覽器發送到服務器的東西。你正在改變從服務器到瀏覽器的迴應,所以這種方式不會工作(不像Cookie標題)。據我所知,在發送Referer時瀏覽器的行爲沒有服務器端控制。

0

瀏覽器確實可以選擇要發送的引用鏈接,但其中有解決方法。

HTML5增加了meta引用,大多數現代瀏覽器都會尊重它。只需添加

<meta name="referrer" content="no-referrer"> 

到您的網站的頭。

還有重定向服務和其他黑客隱藏ref(https重定向,iframe tricks和其他)。