程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 能得到你是從什麼頁面過來的,referer的用處

能得到你是從什麼頁面過來的,referer的用處

編輯:關於PHP編程

在開發web程序的時候,有時我們需要得到用戶是從什麼頁面連過來的,這就用到了referer。

它是http協議,所以任何能開發web程序的語言都可以實現,比如jsp(SUN企業級應用的首選)中是:

request.getHeader("referer");

php(做為現在的主流開發語言)是$_SERVER[HTTP_REFERER]。其他的我就不舉例了(其實是不會其他的語言)。

那它能干什麼用呢?我舉兩個例子:

1,防止盜連,比如我是個下載軟件的網站,在下載頁面我先用referer來判斷上一頁面是不是自己網站,如果不是,說明有人盜連了你的下載地址。

2,電子商務網站的安全,我在提交信用卡等重要信息的頁面用referer來判斷上一頁是不是自己的網站,如果不是,可能是黑客用自己寫的一個表單,來提交,為了能跳過你上一頁裡的javascript的驗證等目的。

使用referer的注意事項:

如果我是直接在浏覽器裡輸入有referer的頁面,返回是null(jsp(SUN企業級應用的首選)),也就是說referer只有從別的頁面點擊連接來到這頁的才會有內容。

我做了個實驗,比如我的referer代碼在a.jsp(SUN企業級應用的首選)中,它的上一頁面是b.htm,c.htm是一個帶有iframe的頁面,它把a.jsp(SUN企業級應用的首選)嵌在iframe裡了。我在浏覽器裡輸入b.htm的地址,然後點擊連接去c.htm,那顯示的結果是b.htm,如果我在浏覽器裡直接輸入的是c.htm那顯示的是c.htm

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved