2011-09-27 42 views
10

我下載了html5樣板,它不會在頭文件中驗證。http-equiv =「X-UA-Compatible」content =「IE = edge,chrome = 1」...把它放在.htaccess中?

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" > 

我被告知我可以將此添加到.htaccess中以獲得相同的效果以避免驗證錯誤。

<IfModule mod_headers.c> 
    Header set X-UA-Compatible "IE=Edge,chrome=1" 
    # mod_headers can't match by content-type, but we don't want to send this header on *everything*... 
    <FilesMatch "\.(js|css|gif|png|jpe?g|pdf|xml|oga|ogg|m4a|ogv|mp4|m4v|webm|svg|svgz|eot|ttf|otf|woff|ico|webp|appcache|manifest|htc|crx|xpi|safariextz|vcf)$" > 
    Header unset X-UA-Compatible 
    </FilesMatch> 
</IfModule> 

我的問題是

  1. 如何測試,以確保此工作正常
  2. 什麼是filesmatch參數呢?我應該修改它還是那麼好?

回答

11

試圖通過它通過在web.config或htacess文件

的Web.Config

<httpProtocol> 
    <customHeaders> 
    <clear /> 
    <add name="X-UA-Compatible" value="IE=Edge,chrome=1" /> 
    </customHeaders> 
</httpProtocol> 

你的頁面會後有效。對不起,我不是一個PHP的傢伙。

+0

.htaccess工程很好。 +1 – jasonflaherty

2

如何測試,以確保此工作正常

提出請求的URI,並期待在響應頭。有很多工具可以做到這一點,包括Charles Proxy,Firebug和Chrome Developer Tools。

filesmatch參數有什麼作用?

這是described in the manual

+0

謝謝!我的下一個問題是...我已經添加了以下內容來轉發www到非www,並且在我將www.domain.com輸入到google或firefox時,它仍然保留在www中。這只是瀏覽器的一部分,還是實際上不起作用。 – Tallboy

+0

RewriteCond%{HTTPS}!= on RewriteCond%{HTTP_HOST}^www \。(。+)$ [NC] RewriteRule^http://%1%{REQUEST_URI} [R = 301,L] Tallboy

+0

要問你的下一個問題,請使用[問問題](http://stackoverflow.com/questions/ask)鏈接 – Quentin

7

最好htaccess的配置,我發現低於這一:因爲它發送報頭只爲IE瀏覽器

<IfModule mod_setenvif.c> 
    <IfModule mod_headers.c> 
    BrowserMatch MSIE ie 
    Header set X-UA-Compatible "IE=Edge,chrome=1" env=ie 
    </IfModule> 
</IfModule> 

+0

「最佳」總是非常依賴於觀點。這不是最好的imho,因爲這是瀏覽器嗅探,最糟糕的是,在服務器端。瀏覽器嗅探不是100%可靠的解決方案。有些用戶混淆他們的瀏覽器,一些公司代理可能會做同樣的事情,代理可能會緩存答案,並將其提供給其他瀏覽器,瀏覽器發展和未來版本可能不再被識別,... –

+0

當然!我認爲在這種情況下,這不是什麼大問題,因爲瀏覽器嗅探不會觸發關鍵功能。 – tzi

4

http://www.validatethis.co.uk/tag/x-ua-compatible/

亞倫雷頓擁有一切聽:)只是向下滾動到了「修復」,並跳過上述所有:)

或者你可以把它添加到你這樣的.htaccess文件:

<FilesMatch "\.(htm|html|php)$"> 
    <IfModule mod_headers.c> 
     BrowserMatch MSIE ie 
     Header set X-UA-Compatible "IE=Edge,chrome=1" env=ie 
    </IfModule> 
</FilesMatch> 
相關問題