我使用PHP來生成動態網頁。如以下教程所述(請參閱下面的鏈接),當$ _SERVER ['HTTP_ACCEPT']允許時,MIME類型的XHTML文檔應該是「application/xhtml + xml」。由於您可以使用2種不同的MIME(「application/xhtml + xml」和「text/html」)提供相同的頁面,因此您應該將「Vary」HTTP標頭設置爲「Accept」。這將有助於緩存代理。「Vary:Accept」HTTP頭的功能是什麼?
鏈接: http://keystonewebsites.com/articles/mime_type.php
現在我不知道的寓意: 頭( '有所不同:接受'); 我真的不知道什麼「有所不同:接受」將精確地做......
我發現的唯一解釋是:
的Content-Type頭後,因人而異 頭中發送到(如果我正確理解它 )告訴中間緩存 像代理服務器一樣,文檔的內容 根據請求文檔的客戶端 的功能而變化,具體取決於 。 http://www.456bereastreet.com/archive/200408/content_negotiation/
任何人都可以給我這個頭的「真實」的解釋(與價值)。我想我明白了諸如: 有所不同:接受編碼 凡代理緩存可以基於網頁的編碼服務,但我不明白: 各不相同:接受
坦率地說 - 不要打擾。撇開該網站實施中的缺陷,唯一一次從XML內容類型服務中獲得好處的時候是,當你做一些無法在text/html中完成的事情 - 並且如果你在做所有事情正在轉換Doctype和xmlns,那麼你不會去做那些事情。堅持text/html。對於這個問題,你可能會堅持使用HTML 4.01。 – Quentin 2009-12-29 17:22:42
是的,我明白這一點,我認爲像這樣的「問題」在Web開發中經常出現。感謝規範/ RFC中的「應該」! – AlexV 2009-12-29 18:22:33
在考慮使用VARY之前,您應該閱讀以下內容:http://blogs.msdn.com/ieinternals/archive/2009/06/17/Vary-Header-Prevents-Caching-in-IE.aspx。 – EricLaw 2010-01-05 03:44:55