Nginx靜態(tài)資源使用方法-創(chuàng)新互聯(lián)

這篇文章主要為大家詳細(xì)介紹了Nginx靜態(tài)資源使用方法,Nginx靜態(tài)資源如何對文件進(jìn)行壓縮和添加防盜鏈,零基礎(chǔ)也能參考此文章,感興趣的小伙伴們可以參考一下。

創(chuàng)新互聯(lián)建站長期為上1000家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為滄縣企業(yè)提供專業(yè)的成都網(wǎng)站制作、網(wǎng)站設(shè)計,滄縣網(wǎng)站改版等技術(shù)服務(wù)。擁有十年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

1)靜態(tài)資源類型

Nginx作為靜態(tài)資源web服務(wù)器部署配置,傳輸非常的高效,常常用于靜態(tài)資源處理、請求、動靜分離!

非服務(wù)器動態(tài)運行生成的文件屬于靜態(tài)資源!

類型種類
瀏覽器端渲染HTML、CSS、JS
圖片JPEG、GIF、PNG
視頻FLV、MP4
文件TXT、任意下載文件

2)靜態(tài)資源場景

靜態(tài)資源傳輸延遲最小化!

如圖:
Nginx靜態(tài)資源使用方法

3)靜態(tài)資源配置語法

1)文件讀取高效——>sendfile
Syntax:sendfile on | off ;
Default:sendfile off ;
Context:http、server、location、if in location ;
2)提高網(wǎng)絡(luò)傳輸效率——>nopush
Syntax:tcp_nopush on | off ;
Default:tcp_nopush off ;
Context:http、server、location ;
作用: sendfile開啟情況下,  提??絡(luò)包的'傳輸效率';
3)與 tcp_nopush 之對應(yīng)的配置 tcp_nodelay
Syntax: tcp_nodelay on  |  off ;
Default:   tcp_nodelay on ;
Context:http,  server, location ;
作?: 在keepalive連接下,提??絡(luò)的傳輸‘實時性’;

4)靜態(tài)資源文件壓縮

Nginx 將響應(yīng)報?發(fā)送?客戶端之前可以啟?壓縮功能,這能夠有效地節(jié)約帶寬,并提?響應(yīng)?客戶端的速度。

Nginx靜態(tài)資源使用方法

1)gzip壓縮配置語法
Syntax: gzip   on  |  off ;
Default:   gzip   off ;
Context:   http,  server, location,  if  in  location ;
作?:傳輸壓縮;
2)gzip壓縮比率配置語法
Syntax: gzip_comp_level level ;
Default:   gzip_comp_level 1 ;
Context:   http,  server, location ;
作?:壓縮本身?較耗費服務(wù)端性能 ;
3)gzip壓縮協(xié)議版本
Syntax: gzip_http_version  1.0 |  1.1 ;
Default:   gzip_http_version  1.1 ;
Context:   http,  server, location ;
作?: 壓縮使?在http哪個協(xié)議,  主流版本1.1 ;
4)擴(kuò)展壓縮模塊
Syntax: gzip_static on  |  off |  always ;
Default:   gzip_static off ;
Context:   http,  server, location ;
作?: 預(yù)讀gzip功能 ;
5)圖片壓縮案例
[root@nginx ~]# mkdir -p /soft/code/images
[root@nginx ~]# vim /etc/nginx/conf.d/static_server.conf
server  {
     listen  80;
     server_name  192.168.1.10;
     sendfile on;
     access_log /var/log/nginx/static_access.log main;

     location ~ .*\.(jpg|gif|png)$  {
         gzip on;
         gzip_http_version 1.1;
         gzip_comp_level 2;
         gzip_types text/plain application/json  application/x-javascript app lication/css application/xml application/xml+rss text/javascript application/x-httpd-php image/jpeg image/gif image/png;
         root /soft/code/images;
         }
}
[root@nginx ~]# nginx -t
[root@nginx ~]# nginx -s reload

由于圖片的壓縮效果不是太好,所以這里只附上配置!

6)文件壓縮案例
[root@nginx ~]# mkdir -p /soft/code/doc
[root@nginx ~]# vim /etc/nginx/conf.d/static_server.conf
server  {
     listen  80;
     server_name  192.168.1.10;
     sendfile on;
     access_log /var/log/nginx/static_access.log main;

     location ~ .*\.(txt|xml)$    {
         gzip on;
         gzip_http_version 1.1;
         gzip_comp_level 2;
         gzip_types text/plain application/json  application/x-javascript app lication/css application/xml application/xml+rss text/javascript application/x-httpd-php image/jpeg image/gif image/png;
         root /soft/code/doc;
         }
}
[root@nginx ~]# nginx -t
[root@nginx ~]# nginx -s reload
1)沒有啟用gzip文件壓縮

Nginx靜態(tài)資源使用方法

2)啟用gzip文件壓縮

Nginx靜態(tài)資源使用方法

5)靜態(tài)資源瀏覽器緩存

HTTP協(xié)議定義的緩存機(jī)制(如: Expires; Cache-control 等)

1)瀏覽器無緩存

瀏覽器請求——>無緩存——>請求web服務(wù)器——>請求響應(yīng)——>呈現(xiàn)

2)瀏覽器有緩存

瀏覽器請求->有緩存->校驗過期->是否有更新->呈現(xiàn)
校驗是否過期 Expires HTTP1.0, Cache-Control(max-age) HTTP1.1
協(xié)議中Etag頭信息校驗 Etag ()
Last-Modified頭信息校驗 Last-Modified (具體時間)
1)緩存配置語法expires
Syntax: expires [modified]  time ;
Default:   expires off ;
Context:   http,  server, location,  if in location ;
作?: 添加Cache-Control Expires頭 ;
2)配置靜態(tài)資源緩存
[root@nginx conf.d]# vim static_server.conf 
server  {
     listen  80;  
     server_name  192.168.1.10;
     sendfile on;
     access_log /var/log/nginx/static_access.log main;

     location ~ .*\.(txt|js|css|html)$ {
         root /soft/code/doc;
         expires 1h;
     }
     location ~ .*\.(jpg|gif|png)$ {
         root /soft/code/images;
         expires 7d;
     }
}
[root@nginx conf.d]# nginx -t
[root@nginx conf.d]# nginx -s reload

瀏覽器測試效果:
Nginx靜態(tài)資源使用方法
Nginx靜態(tài)資源使用方法

3)配置靜態(tài)文件不緩存
[root@nginx conf.d]# vim static_server.conf
server  {
     listen  80;
     server_name  192.168.1.10;
     sendfile on;
     access_log /var/log/nginx/static_access.log main;

     location ~ .*\.(txt|js|css|html)$ {
         root /soft/code/doc;
         add_header Cache-Control no-store;
         add_header Pragma no-cache;
     }
     location ~ .*\.(jpg|gif|png)$ {
         root /soft/code/images;
         expires 7d;
     }
}
[root@nginx conf.d]# nginx -t
[root@nginx conf.d]# nginx -s reload

瀏覽器測試效果:
Nginx靜態(tài)資源使用方法

6)靜態(tài)資源防盜鏈

盜鏈指的是在??的界?展示不在??服務(wù)器上的內(nèi)容,通過技術(shù)?段獲得他?服務(wù)器的資源地址,繞過別?資源展示??,在????向?戶提供此內(nèi)容,從?減輕??服務(wù)器的負(fù)擔(dān),因為真實的空間和流量來?別?服務(wù)器;

防盜鏈設(shè)置思路: 區(qū)別哪些請求是?正常?戶請求;

基于http_refer 防盜鏈配置模塊:

Syntax: valid_referers  none   |  blocked |  server_names   |  string  ...;
Default:   —
Context:   server, location

另一臺nginx服務(wù)器(初始的情況),編寫html文件:

[root@nginx02 conf.d]# vim /usr/share/nginx/html/dl.html
<html>
     <head>
     <meta charset="utf-8">
     <title>pachong</title>
     </head>
     <body >
     <img src="http://192.168.1.10/test.jpg">
     </body>
</html>
[root@nginx02 conf.d]# nginx -t 
[root@nginx02 conf.d]# nginx -s reload

第一臺服務(wù)正常訪問:
Nginx靜態(tài)資源使用方法
第二胎服務(wù)器盜用第一臺服務(wù)器的圖片:
Nginx靜態(tài)資源使用方法

2)啟用防盜鏈
[root@nginx conf.d]# vim static.conf
server {
     listen 80;
     server_name 192.168.1.10;
     valid_referers none blocked 192.168.1.10;
     location ~ .*\.(jpg|gif|png)$ {
         if ($invalid_referer) {
             return  403;
             break;
         }
         root /soft/code/images;
     }
}
[root@nginx conf.d]# nginx -t
[root@nginx conf.d]# nginx -s reload

再次訪問第二臺服務(wù)器:
Nginx靜態(tài)資源使用方法

關(guān)于Nginx靜態(tài)資源使用方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果喜歡這篇文章,不如把它分享出去讓更多的人看到。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

文章題目:Nginx靜態(tài)資源使用方法-創(chuàng)新互聯(lián)
路徑分享:http://bm7419.com/article14/cecede.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計微信小程序、網(wǎng)站維護(hù)、外貿(mào)建站、全網(wǎng)營銷推廣網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計公司