2016-04-22 42 views
0

我看到兩個流行的選項來強制IE在特定的模式下打開一個HTML:針對特定IE模式仿真的Apache與Meta標籤?

1)<meta http-equiv="X-UA-Compatible" content="IE=edge" />

2)指定其作爲httpd.conf

頁眉哪些優點任這些選項?有沒有推薦的方法來做到這一點?

我看到的大多數應用程序都使用Apache作爲負載平衡器,它通常會處理對www.url.com的請求,並將其發送到其中一個可能的應用程序服務器。無論如何,直接訪問IP不會得到仿真的好處,因爲沒有設置Headers。元標籤解決問題比Apache更接近?那麼,設置特定仿真的更好方式還是Apache方法還有其他好處嗎?

回答

1

說實話。

不再支持X-UA兼容(截至IE11及以上版本)和Microsoft recommends not using it and instead using the HTML5 doc type

說這個,要回答你的問題(如果對這樣的其他頭文件感興趣),這取決於。兩者都有好處。設置HTTP頭

  • 好處是可以在服務器級別上設置一次,不需要記住,包括每一頁上。

  • 如果您無法控制所有頁面(例如,許多開發人員/貢獻者將內容上傳到網站),該功能很有用。
  • HTTP標頭通常優先(儘管不適用於X-UA兼容)。在頁面級別設置的

優點:

  • 不需要訪問服務器(例如,如果頁的服務器上託管的地方,你不能訪問服務器配置,或通過CDN服務)。
  • 當我們通過CDN或其他緩存解決方案提供服務時,將被複制。
  • 可以由頁面作者設置(例如,如果頁面需要特定的標題並且作者知道這一點)。
  • 如果每個頁面需要不同的設置,而不是在Apache中加載所有的配置,那麼通常會更容易覆蓋每個頁面。
+0

大多數我們使用SPA,所以我覺得'meta'是更好的選擇。但是將簽出'doctype' – Nishant

+0

X-UA兼容在IE11中已棄用,但仍支持。 – libertyernie

1

當單個頁面包含服務器提供的x-ua兼容標頭時,it overrides headers。有時候這是有用的(對於沒有DOCTYPE指令的傳統網站而言)以及不適用的時候。通常情況下,你知道你正在試圖解決的問題是哪種情況。

對於大多數情況,推薦的做法是對use an HTML5 doctype<!DOCTYPE html>),並且只對依賴遺留標記的遺留站點使用x-ua兼容。理想情況下,這將是一個temporary solution,直到新版本的網站開發出來才使用,以便它不再依賴於傳統行爲。