2010-01-25 71 views
1

什麼是寫代碼爲什麼我們必須寫頭緩存控制?

header("Cache-Control: no-cache, must-revalidate"); 
header("Expires: May, 17 May 1983 05:00:00 GMT\n"); 
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); 

,而且我們必須編寫代碼的這些線,這些線的意義嗎? 在我們做數據庫處理或只是任何PHP頁面的頁面?

回答

1

我們要寫這些代碼行嗎?在我們做databse交易或只是任何PHP頁面的頁面上?

在任何頁面上將顯示不希望緩存的數據,因爲其內容快速而持續地變化。如果頁面不經常更改,則不希望禁用緩存,因爲這會導致頁面性能下降,並增加服務器的負擔。緩存是一件好事。只在必要時禁用它。

0

您應該閱讀這個關於SEO和速度優化的article

緩存是資源的本地副本,因爲很多資源很少發生更改,所以可以使用緩存。當瀏覽器可以重複使用本地副本時,它可以節省建立連接的時間以及下載時間。使緩存有效工作的關鍵是HTTP緩存頭,它由Web服務器發送,以指定資源的有效期和最後一次更改的時間。

如果網頁上的數據變化很快(如股票交易所股票代碼),您應該避免兌現。 但在大多數情況下,您應該使用它。您還可以使用Yslow或螢火蟲的頁面速度插件來測試您的頁面。

0

您發佈的代碼可防止客戶端緩存HTTP響應。如果您希望每次用戶查看時都從服務器上下載新的頁面副本,則應包含這些行。如果頁面上的數據經常變化,這會很有用。當然,這是一個帶寬成本,因此您必須仔細考慮您網站上的哪些頁面可以緩存,哪些不可以。

1
header("Cache-Control: no-cache, must-revalidate"); 

告訴HTTP/1.1客戶不要cahce頁面

header("Expires: May, 17 May 1983 05:00:00 GMT\n"); 

告訴HTTP/1.0客戶端(這不會明白前行)不要緩存內容

header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); 

它的禮貌和有用的調試把它放在 - 沒有任何區別,如何處理頁面後緩存前兩行

和我們在哪裏寫這些代碼行?在我們做databse交易或只是任何PHP頁面的頁面上?

你永遠不應該納入任何代碼你不明白你的產品。正確使用緩存是一個好主意,但可以節省大量資金。馬克諾丁漢有一個谷歌教程緩存起動器。

C.

相關問題