Nginx之Http模塊系列之a(chǎn)utoindex模塊的具體使用
brower 模塊主要作用是根據(jù)http請(qǐng)求頭中"User-Age
1. 簡(jiǎn)介
ngx_http_browser_module 模塊,通過判斷"User-Age
2.內(nèi)置變量列表
$modern_browser
如果瀏覽器被標(biāo)識(shí)為現(xiàn)代瀏覽器,則等于 modern_browser_value 指令設(shè)置的值;
$ancient_browser
如果瀏覽器被識(shí)別為古老瀏覽器,則等于 Ancient_browser_value 指令設(shè)置的值;
$msie
如果瀏覽器被識(shí)別為MSIE,不區(qū)分任何版本,則等于1;
3.配置示例
現(xiàn)代瀏覽器的識(shí)別邏輯配置:
modern_browser_value "modern."; # modern_brower指定何種瀏覽器以及對(duì)應(yīng)的版本被視為現(xiàn)代瀏覽器, 配置格式后續(xù)介紹 modern_browser msie 5.5; modern_browser gecko 1.0.0; modern_browser opera 9.0; modern_browser safari 413; modern_browser konqueror 3.0; 當(dāng)瀏覽器被判斷為現(xiàn)代瀏覽器時(shí),modern_browser變量等于"modern.",即modern_browser_value配置的變量。 index index.${modern_browser}html index.html;
古老瀏覽器的兼容判斷:
modern_browser msie 5.0; modern_browser gecko 0.9.1; modern_browser opera 8.0; modern_browser safari 413; modern_browser konqueror 3.0; modern_browser unlisted; # ancient_browser配置何種子串被識(shí)別為古老瀏覽器 ancient_browser Links Lynx netscape4; # 當(dāng)瀏覽器被識(shí)別為古老瀏覽器,ancient_browser為1; 在此處可以做兼容處理或者給用戶直接以提示,提示更新或者更換現(xiàn)代瀏覽器; if ($ancient_browser) { rewrite ^ /ancient.html; }
4.配置格式
Syntax: ancient_browser string ...; Default: — Context: http, server, location
配置"User-Age
Syntax: ancient_browser_value string; Default: ancient_browser_value 1; Context: http, server, location
當(dāng)識(shí)別為古老瀏覽器時(shí),$ancient_browser變量的值,即默認(rèn)為1;
Syntax: modern_browser browser version; modern_browser unlisted; Default: — Context: http, server, location
配置何種瀏覽器何種版本時(shí),判定為現(xiàn)代瀏覽器。browser取值:msie, gecko, opera, safari, konqueror. 版本定義格式為X, X.X, X.X.X, 或者X.X.X.X. ,每個(gè)格式的最大值分別為: 4000, 4000.99, 4000.99.99, and 4000.99.99.99。
unlisted為特殊字符串,配置當(dāng)瀏覽器都未出現(xiàn)在來modern_browser和ancient_browser匹配范圍里,則被視為現(xiàn)代瀏覽器。否則被視為古老瀏覽器。如果請(qǐng)求頭中未提供"User-Age
Syntax: modern_browser_value string; Default: modern_browser_value 1; Context: http, server, location
當(dāng)識(shí)別為現(xiàn)代瀏覽器時(shí),$modern_browser變量的值,默認(rèn)為1;
4.總結(jié)
ngx_http_browser_module 提供了瀏覽器兼容的判斷機(jī)制,使我們?cè)谧鲂屡f瀏覽器兼容處理時(shí)更為優(yōu)雅與高效,同學(xué)們可以在實(shí)際需求中多加運(yùn)用,將業(yè)務(wù)邏輯中的瀏覽器版本抽離出來,使得業(yè)務(wù)更像業(yè)務(wù),無需考慮其他。
到此這篇關(guān)于Nginx之Http模塊系列之a(chǎn)utoindex模塊的具體使用的文章就介紹到這了,更多相關(guān)Nginx autoindex模塊內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。