頁面重定向幾種方法總結

weixin_34279184發表於2014-05-14

  頁面重定向,即頁面從當前請求的頁面,有條件或者定時跳轉到其他頁面。

總結下有一下幾種方法:

響應報文頭

301 -- moved permanently  (如果同一個網頁有多個域名,從附域名跳轉到主域名,需要使用此狀態程式碼。)

302 -- moved temporarily (請求的資源被臨時替換為另外一個URL)

在瀏覽器解析報文頭的過程中,就會產生跳轉頁面動作, 效率最高。

例如PHP指令碼

301 moved permanently (redirect): 
<?php 
header
('HTTP/1.1 301 Moved Permanently');
header('Location: http://www.example.com');
die();
?> 


302 moved temporarily(redirect): 
<?php 
header
('Location: http://www.example.com');
die();
?> 

 

 

 

HTML META HEAD

  藉助HTML meta 的refresh http-equiv 來實現頁面跳轉。 

一般使用為在顯示此頁面後,幾秒後跳轉到其他URL,藉此時間給使用者展示一些通知,

例如 使用者訪問URL, 運營商 先給 使用者推廣告 或者 告知使用者網路使用情況, 幾秒會在跳轉到使用者訪問URL。

 

<meta http-equiv="refresh" content="5; url=http://www.dreamdu.com/" />

 

 

JavaScript location.href

  在頁面載入後, 使用js指令碼, 定時 或者 根據使用者輸入情況, 跳轉到其它的頁面。

如果使用這種方法在頁面載入後立刻跳轉, 則相比上面兩個效率最低。 

但是跳轉過程可以給用於展示等待提示。

location.href = "www.jd.com"

 

 

server cgi include

  前面都是針對當前頁面,和 其他頁面檔案 獨立的情況下,  可以使用的方法。

有時候, URL不變, 但是現實內容要求能夠“跳轉”到其他頁面, 則使用伺服器端的 指令碼提供的 include方法;

在請求頁面的指令碼檔案中, 執行 include 目標檔案, 後直接return。

<?php include 'GO2PAGE.php'; ?>

 

 

 

 

相關文章