最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx性能優(yōu)化之Gzip壓縮設(shè)置詳解(最大程度提高頁(yè)面打開(kāi)速度)

 更新時(shí)間:2022年01月30日 12:39:33   投稿:wdc  
這篇文章主要介紹了Nginx性能優(yōu)化之Gzip壓縮設(shè)置詳解(最大程度提高頁(yè)面打開(kāi)速度),需要的朋友可以參考下

Nginx開(kāi)啟Gzip壓縮功能, 可以使網(wǎng)站的css、js 、xml、html 文件在傳輸時(shí)進(jìn)行壓縮,提高訪問(wèn)速度, 進(jìn)而優(yōu)化Nginx性能!  Web網(wǎng)站上的圖片,視頻等其它多媒體文件以及大文件,因?yàn)閴嚎s效果不好,所以對(duì)于圖片沒(méi)有必要支壓縮,如果想要優(yōu)化,可以圖片的生命周期設(shè)置長(zhǎng)一點(diǎn),讓客戶端來(lái)緩存。 開(kāi)啟Gzip功能后,Nginx服務(wù)器會(huì)根據(jù)配置的策略對(duì)發(fā)送的內(nèi)容, 如css、js、xml、html等靜態(tài)資源進(jìn)行壓縮, 使得這些內(nèi)容大小減少,在用戶接收到返回內(nèi)容之前對(duì)其進(jìn)行處理,以壓縮后的數(shù)據(jù)展現(xiàn)給客戶。這樣不僅可以節(jié)約大量的出口帶寬,提高傳輸效率,還能提升用戶快的感知體驗(yàn), 一舉兩得; 盡管會(huì)消耗一定的cpu資源,但是為了給用戶更好的體驗(yàn)還是值得的。

經(jīng)過(guò)Gzip壓縮后頁(yè)面大小可以變?yōu)樵瓉?lái)的30%甚至更小,這樣,用戶瀏覽頁(yè)面的時(shí)候速度會(huì)快得多。Gzip 的壓縮頁(yè)面需要瀏覽器和服務(wù)器雙方都支持,實(shí)際上就是服務(wù)器端壓縮,傳到瀏覽器后瀏覽器解壓并解析。瀏覽器那里不需要我們擔(dān)心,因?yàn)槟壳暗木薮蠖鄶?shù)瀏覽器 都支持解析Gzip過(guò)的頁(yè)面。

Gzip壓縮作用:將響應(yīng)報(bào)?發(fā)送?客戶端之前可以啟?壓縮功能,這能夠有效地節(jié)約帶寬,并提?響應(yīng)?客戶端的速度。Gzip壓縮可以配置http,server和location模塊下。Nginx開(kāi)啟Gzip壓縮參數(shù)說(shuō)明:

gzip on;                 #決定是否開(kāi)啟gzip模塊,on表示開(kāi)啟,off表示關(guān)閉;
gzip_min_length 1k;      #設(shè)置允許壓縮的頁(yè)面最小字節(jié)(從header頭的Content-Length中獲取) ,當(dāng)返回內(nèi)容大于此值時(shí)才會(huì)使用gzip進(jìn)行壓縮,以K為單位,當(dāng)值為0時(shí),所有頁(yè)面都進(jìn)行壓縮。建議大于1k
gzip_buffers 4 16k;      #設(shè)置gzip申請(qǐng)內(nèi)存的大小,其作用是按塊大小的倍數(shù)申請(qǐng)內(nèi)存空間,param2:int(k) 后面單位是k。這里設(shè)置以16k為單位,按照原始數(shù)據(jù)大小以16k為單位的4倍申請(qǐng)內(nèi)存
gzip_http_version 1.1;   #識(shí)別http協(xié)議的版本,早起瀏覽器可能不支持gzip自解壓,用戶會(huì)看到亂碼
gzip_comp_level 2;       #設(shè)置gzip壓縮等級(jí),等級(jí)越底壓縮速度越快文件壓縮比越小,反之速度越慢文件壓縮比越大;等級(jí)1-9,最小的壓縮最快 但是消耗cpu
gzip_types text/plain application/x-javascript text/css application/xml;    #設(shè)置需要壓縮的MIME類型,非設(shè)置值不進(jìn)行壓縮,即匹配壓縮類型
gzip_vary on;            #啟用應(yīng)答頭"Vary: Accept-Encoding"

gzip_proxied off;
nginx做為反向代理時(shí)啟用,off(關(guān)閉所有代理結(jié)果的數(shù)據(jù)的壓縮),expired(啟用壓縮,如果header頭中包括"Expires"頭信息),no-cache(啟用壓縮,header頭中包含"Cache-Control:no-cache"),
no-store(啟用壓縮,header頭中包含"Cache-Control:no-store"),private(啟用壓縮,header頭中包含"Cache-Control:private"),no_last_modefied(啟用壓縮,header頭中不包含
  "Last-Modified"),no_etag(啟用壓縮,如果header頭中不包含"Etag"頭信息),auth(啟用壓縮,如果header頭中包含"Authorization"頭信息)

gzip_disable msie6;
(IE5.5和IE6 SP1使用msie6參數(shù)來(lái)禁止gzip壓縮 )指定哪些不需要gzip壓縮的瀏覽器(將和User-Agents進(jìn)行匹配),依賴于PCRE庫(kù)

######################################################################################################
#如下:修改nginx配置文件 /usr/local/nginx/conf/nginx.conf
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf        #將以下配置放到nginx.conf的http{ ... }區(qū)域中

#修改配置為
gzip on;                     #開(kāi)啟gzip壓縮功能
gzip_min_length 10k;         #設(shè)置允許壓縮的頁(yè)面最小字節(jié)數(shù); 這里表示如果文件小于10個(gè)字節(jié),就不用壓縮,因?yàn)闆](méi)有意義,本來(lái)就很小.
gzip_buffers 4 16k;          #設(shè)置壓縮緩沖區(qū)大小,此處設(shè)置為4個(gè)16K內(nèi)存作為壓縮結(jié)果流緩存
gzip_http_version 1.1;       #壓縮版本
gzip_comp_level 2;           #設(shè)置壓縮比率,最小為1,處理速度快,傳輸速度慢;9為最大壓縮比,處理速度慢,傳輸速度快; 這里表示壓縮級(jí)別,可以是0到9中的任一個(gè),級(jí)別越高,壓縮就越小,節(jié)省了帶寬資源,但同時(shí)也消耗CPU資源,所以一般折中為6
gzip types text/css text/xml application/javascript;      #制定壓縮的類型,線上配置時(shí)盡可能配置多的壓縮類型!
gzip_disable "MSIE [1-6]\.";       #配置禁用gzip條件,支持正則。此處表示ie6及以下不啟用gzip(因?yàn)閕e低版本不支持)
gzip vary on;    #選擇支持vary header;改選項(xiàng)可以讓前端的緩存服務(wù)器緩存經(jīng)過(guò)gzip壓縮的頁(yè)面; 這個(gè)可以不寫(xiě),表示在傳送數(shù)據(jù)時(shí),給客戶端說(shuō)明我使用了gzip壓縮

 如下是線上常使用的Gzip壓縮配置

[root@external-lb02 ~]# cat /data/nginx/conf/nginx.conf
........
http {
.......
    gzip  on;
    gzip_min_length  1k;
    gzip_buffers     4 16k;
    gzip_http_version 1.1;
    gzip_comp_level 9;
    gzip_types       text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php application/javascript application/json;
    gzip_disable "MSIE [1-6]\.";
    gzip_vary on;

}

如果不開(kāi)啟Gzip壓縮功能(即注釋掉Gzip的相關(guān)配置), 查看某個(gè)圖片大小

[root@external-lb02 ~]#  ll  -h /data/web//www/test.bmp
-rw-r--r-- 1 root root 453K 3月  14 18:43 /data/web//www/test.bmp

如下可知, 文件沒(méi)有被壓縮,文件傳輸大小還是400多K

如果開(kāi)啟Nginx的Gzip壓縮功能(即打開(kāi)Gzip的相關(guān)配置), 然后再次訪問(wèn)test.bmp圖片, 發(fā)現(xiàn)壓縮后的該圖片文件傳輸大小只有200多K !

通過(guò)上面測(cè)試對(duì)比, 發(fā)現(xiàn)Nginx開(kāi)啟Gzip壓縮功能后, 定義的gzip type的文件在傳輸時(shí)的大小明顯變小, 這樣這會(huì)大大提高nginx訪問(wèn)性能. 

直接用curl測(cè)試命令:

[root@fvtlb02 ~]# curl -I -H "Accept-Encoding: gzip, deflate" "http://fvtvfc-web.kevin.com/service-worker.js"
HTTP/1.1 200 OK
Server: nginx/1.12.2
Date: Mon, 26 Nov 2018 02:19:16 GMT
Content-Type: application/javascript; charset=utf-8
Connection: keep-alive
Vary: Accept-Encoding
Last-Modified: Sun, 25 Nov 2018 22:28:15 GMT
Vary: Accept-Encoding
ETag: W/"5bfb21ff-40be"
Content-Encoding: gzip

如上,response header頭信息中出現(xiàn)"Conten_Encoding: gzip" , 就說(shuō)明Nginx已開(kāi)啟了壓縮 (在瀏覽器訪問(wèn), 通過(guò)F12看請(qǐng)求的響應(yīng)頭部 也是一樣)

Nginx的Gzip壓縮功能雖然好用,但是下面兩類文件資源不太建議啟用此壓縮功能。

1) 圖片類型資源 (還有視頻文件)原因:圖片如jpg、png文件本身就會(huì)有壓縮,所以就算開(kāi)啟gzip后,壓縮前和壓縮后大小沒(méi)有多大區(qū)別,所以開(kāi)啟了反而會(huì)白白的浪費(fèi)資源。(可以試試將一張jpg圖片壓縮為zip,觀察大小并沒(méi)有多大的變化。雖然zip和gzip算法不一樣,但是可以看出壓縮圖片的價(jià)值并不大)

2) 大文件資源原因:會(huì)消耗大量的cpu資源,且不一定有明顯的效果。

相關(guān)文章

  • Nginx報(bào)404錯(cuò)誤的詳細(xì)解決方法

    Nginx報(bào)404錯(cuò)誤的詳細(xì)解決方法

    最近打開(kāi)網(wǎng)站看看結(jié)果提示:nginx 404 not found,所以這篇文章主要給大家介紹了關(guān)于Nginx報(bào)404錯(cuò)誤的簡(jiǎn)單解決方法,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • nginx開(kāi)啟ws訪問(wèn)和4層負(fù)載的編譯參數(shù)示例

    nginx開(kāi)啟ws訪問(wèn)和4層負(fù)載的編譯參數(shù)示例

    這篇文章主要為大家介紹了nginx開(kāi)啟ws訪問(wèn)和4層負(fù)載的編譯參數(shù),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • nginx 自定義 404、50x 錯(cuò)誤頁(yè)面的實(shí)現(xiàn)

    nginx 自定義 404、50x 錯(cuò)誤頁(yè)面的實(shí)現(xiàn)

    本文主要介紹了nginx 自定義 404、50x 錯(cuò)誤頁(yè)面的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-12-12
  • 在Nginx中隱藏版本號(hào)的方法詳解

    在Nginx中隱藏版本號(hào)的方法詳解

    Nginx是一款高性能的Web服務(wù)器軟件,它支持反向代理、負(fù)載均衡、緩存等功能,在使用 Nginx 的過(guò)程中,有時(shí)候我們需要隱藏 Nginx 的版本號(hào),以增強(qiáng)服務(wù)器的安全性,所以接下來(lái)小編將給大家介紹如何在Nginx中隱藏版本號(hào),需要的朋友可以參考下
    2023-11-11
  • nginx反向代理二級(jí)域名綁定方法及注意事項(xiàng)

    nginx反向代理二級(jí)域名綁定方法及注意事項(xiàng)

    本文介紹了利用nginx實(shí)現(xiàn)多域名和多站點(diǎn)的綁定的方法及相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2018-04-04
  • Nginx隱藏版本號(hào)與網(wǎng)頁(yè)緩存時(shí)間的方法

    Nginx隱藏版本號(hào)與網(wǎng)頁(yè)緩存時(shí)間的方法

    這篇文章主要介紹了Nginx優(yōu)化之隱藏版本號(hào)與網(wǎng)頁(yè)緩存時(shí)間的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-11-11
  • Nginx訪問(wèn)慢問(wèn)題解決辦法(慢1s)

    Nginx訪問(wèn)慢問(wèn)題解決辦法(慢1s)

    這篇文章主要給大家介紹了關(guān)于Nginx訪問(wèn)慢問(wèn)題解決辦法的相關(guān)資料,訪問(wèn)速度對(duì)網(wǎng)站是極為關(guān)鍵的因素,而服務(wù)器對(duì)其影響最為深遠(yuǎn),需要的朋友可以參考下
    2023-08-08
  • 部署Kibana及nginx代理訪問(wèn)環(huán)境方式

    部署Kibana及nginx代理訪問(wèn)環(huán)境方式

    在elk-node03節(jié)點(diǎn)上部署Kibana并使用Nginx進(jìn)行代理訪問(wèn)和權(quán)限控制,配置多個(gè)端口的Kibana,每個(gè)系統(tǒng)單獨(dú)開(kāi)一個(gè)端口,并通過(guò)Nginx做代理訪問(wèn)配置,每個(gè)系統(tǒng)的業(yè)務(wù)日志在對(duì)應(yīng)的端口Kibana界面展示,配置Nginx反向代理及訪問(wèn)驗(yàn)證,包括設(shè)置虛擬主機(jī)和驗(yàn)證文件
    2024-11-11
  • Nginx流量同時(shí)轉(zhuǎn)發(fā)多后端(流量鏡像分發(fā))

    Nginx流量同時(shí)轉(zhuǎn)發(fā)多后端(流量鏡像分發(fā))

    在需要同時(shí)將請(qǐng)求轉(zhuǎn)發(fā)至多個(gè)后端服務(wù)的場(chǎng)景中,Nginx的mirror模塊提供了流量鏡像分發(fā)的功能,本文就來(lái)介紹一下Nginx流量同時(shí)轉(zhuǎn)發(fā)多后端(流量鏡像分發(fā)),感興趣的可以了解一下
    2024-10-10
  • Ubuntu下nginx編譯安裝參數(shù)配置

    Ubuntu下nginx編譯安裝參數(shù)配置

    這篇文章主要介紹了Ubuntu下nginx編譯安裝參數(shù)配置,本文總結(jié)了一些依賴庫(kù)的安裝以及編碼配置參數(shù),需要的朋友可以參考下
    2015-06-06

最新評(píng)論

福鼎市| 吴桥县| 台山市| 北辰区| 丰县| 宜州市| 日土县| 讷河市| 邻水| 绵阳市| 紫云| 静宁县| 沁源县| 乌恰县| 论坛| 海门市| 新宾| 呼图壁县| 句容市| 上高县| 海安县| 庆安县| 宣武区| 玉田县| 通渭县| 浮梁县| 汾阳市| 天峨县| 女性| 濮阳县| 安西县| 卫辉市| 曲麻莱县| 吴川市| 静宁县| 即墨市| 栾城县| 孙吴县| 墨竹工卡县| 广宁县| 威信县|