2014-01-09 20 views
0

我正在嘗試將用戶重定向到登錄後的特定頁面。兩者同樣有效嗎?或者比另一個更好?Header或Javascript更適合在PHP中重定向嗎?

謝謝

+3

如何打印特定文本(JS重定向)PHP重定向? – kero

+0

即使頁面已加載(頁眉已發送),JavaScript重定向也可以重定向,但php無法做到這一點。 – Goikiu

+0

每種方法都有其優點。使用適合您網站特定情況的網站。 – Spudley

回答

3

你不能比較兩種方法!

JavaScript只會在客戶端運行,因此您需要先發送HTML,然後執行重定向。 使用PHP,你可以直接轉發用戶。這不僅更快,而且也是唯一適用於可用性的選擇。

如果JavaScript被禁用或者您的JS腳本中出現錯誤(無論出於何種原因),您也會遇到問題。那麼,你可以通過使用HTML元重定向來反擊,但使用服務器端重定向的優點是占主導地位。

+2

如果客戶端不支持/理解JavaScript,速度會更快。 –

+0

更不用說如果JS被禁用,重定向就會失效。 –

0

它們是不同的。

一個是服務器端(php),另一個是客戶端(js)。

通常它完成了服務器端,所以它是一個透明的重定向(不污染瀏覽器的歷史記錄,後退按鈕等)。我再說一遍:通常是但這不是一個規則。

0

PHP更快 - 整個頁面不必首先加載。您可以發送標題並退出腳本。

1

相比客戶端JS,HTTP重定向將:

  • 需要較少的數據要被髮送到客戶端爲它來處理重定向指令
  • 不導致瀏覽器行爲不端當背按下按鈕
  • 工作在瀏覽器中與JS堵塞/殘疾/否則失敗

的HTTP Location頭幾乎總是更好的方法。

+0

- 正確使用HTTP協議的設施和規格。 – deceze

0

我認爲這取決於案件

如果你需要一些服務器端處理(如更新數據庫或某些安全數據),然後在那個時候 頭重定向客戶端是在這一點,因爲重定向的好方法服務器發送到瀏覽器只是重定向到一個頁面

那裏就好像你的數據在URL被傳遞或沒有數據需要被髮送到其它頁面的JavaScript,然後重定向是又好又快的要求。

相關問題