Nginx调度器
Nginx調(diào)度器
HTTP調(diào)度
什么是代理服務(wù)器
- Nginx除了可以做web服務(wù)器(網(wǎng)站)之外還可以做反向代理服務(wù)器
- 代理服務(wù)器的作用相當(dāng)于代理人相當(dāng)于中介
代理服務(wù)器的過(guò)程
當(dāng)客戶端訪問(wèn)代理服務(wù)器要頁(yè)面的時(shí)候,代理服務(wù)器沒(méi)有頁(yè)面沒(méi)關(guān)系,代理服務(wù)器幫你訪問(wèn)服務(wù)器,由后臺(tái)服務(wù)器把訪問(wèn)結(jié)果交回代理服務(wù)器,再由代理服務(wù)器把結(jié)果傳回給客戶端.這個(gè)過(guò)程叫做代理服務(wù)器
即可以讓外網(wǎng)的用戶訪問(wèn)到內(nèi)網(wǎng)的服務(wù)器
代理服務(wù)器也叫調(diào)度器
調(diào)度器的作用:負(fù)載均衡 健康檢查
負(fù)載均衡:將客戶端的并發(fā)訪問(wèn)量均衡的分配給后臺(tái)服務(wù)器.對(duì)于高并發(fā)量來(lái)說(shuō),負(fù)載均衡就顯得重要
健康檢查: 時(shí)不時(shí)的檢查后臺(tái)服務(wù)器的健康狀態(tài).一旦發(fā)現(xiàn)有一臺(tái)服務(wù)器壞了就不會(huì)把客戶端的請(qǐng)求交給它.什么時(shí)候這臺(tái)服務(wù)器修好了就自動(dòng)的恢復(fù)訪問(wèn)
Nginx目前支持的調(diào)度器
7層代理(OSI) 應(yīng)用層(http網(wǎng)站代理)
4層代理(TCP/UDP) 傳輸層(傳輸協(xié)議代理)
Nginx調(diào)度算法
- nginx目前支持的調(diào)度算法
輪詢(默認(rèn)的):逐一調(diào)度
weight:指定輪詢幾率,權(quán)重值和訪問(wèn)比率成正比
ip_hash:根據(jù)客戶端IP分配固定的后端服務(wù)器
服務(wù)器組狀態(tài)類型
- 狀態(tài)類型
down:表示當(dāng)前server暫時(shí)不參與負(fù)載
max_fails:允許請(qǐng)求失敗的次數(shù)(默認(rèn)為1)
fail_timeout:max_;fails次失敗后,暫停提供服務(wù)的時(shí)間(秒)
Nginx反向代理
注意事項(xiàng):做七層代理修改配置文件一定要在http{}里面配置
Nginx的HTTP調(diào)度器
問(wèn)題
使用Nginx實(shí)現(xiàn)Web反向代理功能,實(shí)現(xiàn)如下功能:
后端Web服務(wù)器兩臺(tái),可以使用httpd實(shí)現(xiàn)
Nginx采用輪詢的方式調(diào)用后端Web服務(wù)器
兩臺(tái)Web服務(wù)器的權(quán)重要求設(shè)置為不同的值
最大失敗次數(shù)為1,失敗超時(shí)時(shí)間為30秒
方案
使用4臺(tái)RHEL7虛擬機(jī),其中一臺(tái)作為Nginx代理服務(wù)器,該服務(wù)器需要配置兩塊網(wǎng)卡,IP地址分別為192.168.4.5和192.168.2.5,兩臺(tái)Web服務(wù)器IP地址分別為192.168.2.100和192.168.2.200。客戶端測(cè)試主機(jī)IP地址為192.168.4.10
環(huán)境準(zhǔn)備:
首先準(zhǔn)備四臺(tái)虛擬機(jī)IP地址分別為:
proxy:192.168.4.5/24(eth0)
Client:192.168.4.10/24(eth0)
web1:192.168.2.100/24(eth1)
web2:192.168.2.200/24(eth1)
步驟一:部署實(shí)施后端Web服務(wù)器
后端Web服務(wù)器可以簡(jiǎn)單使用yum方式安裝httpd實(shí)現(xiàn)Web服務(wù),為了可以看出后端服務(wù)器的不同,可以將兩臺(tái)后端服務(wù)器的首頁(yè)文檔內(nèi)容設(shè)置為不同的內(nèi)容。(只適合練習(xí)環(huán)境使用,生產(chǎn)環(huán)境下兩臺(tái)后端服務(wù)器的首頁(yè)文檔內(nèi)容應(yīng)該相同)
2)部署后端Web2服務(wù)器
[root@web2 ~]# yum -y install httpd [root@web2 ~]# echo "192.168.2.200" > /var/www/html/index.html [root@web2 ~]# systemctl restart httpd步驟二:配置Nginx服務(wù)器,添加服務(wù)器池,實(shí)現(xiàn)反向代理功能
1)修改/usr/local/nginx/conf/nginx.conf配置文件
2)重起服務(wù)
[root@proxy nginx]# /usr/local/nginx/sbin/nginx [root@proxy nginx]# /usr/local/nginx/sbin/nginx -s reload #重起服務(wù) #請(qǐng)先確保nginx是啟動(dòng)狀態(tài),否則運(yùn)行該命令會(huì)報(bào)錯(cuò),報(bào)錯(cuò)信息如下: #[error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory) ############################################################################# [root@proxy ~]# /usr/local/nginx/sbin/nginx -v #查看當(dāng)前nginx的版本 nginx version: nginx/1.12.2 [root@proxy ~]# /usr/local/nginx/sbin/nginx -V #查看當(dāng)前nginx的詳細(xì)信息,模塊等 nginx version: nginx/1.12.2 built by gcc 4.8.5 20150623 (Red Hat 4.8.5-28) (GCC) built with OpenSSL 1.0.2k-fips 26 Jan 2017 TLS SNI support enabled configure arguments: --with-http_ssl_module --with-stream --with-http_stub_status_module3)客戶端使用瀏覽器訪問(wèn)代理服務(wù)器測(cè)試輪詢效果
[root@client ~]# curl http://192.168.4.5 #使用該命令多次訪問(wèn) 192.168.2.100 [root@client ~]# curl http://192.168.4.5 #使用該命令多次訪問(wèn) 192.168.2.200 出現(xiàn)的效果為輪詢效果. 調(diào)度器帶健康檢查功能,當(dāng)web服務(wù)器其中一臺(tái)壞掉了,就會(huì)自動(dòng)停止訪問(wèn) 下面以web1作為示例: [root@web1 ~]# systemctl stop httpd [root@client ~]# curl 192.168.4.5 192.168.2.200 [root@client ~]# curl 192.168.4.5 192.168.2.200 [root@client ~]# curl 192.168.4.5 192.168.2.200 由于實(shí)驗(yàn)中只用了兩臺(tái)web,所以停止web1服務(wù),客戶端還是能正常訪問(wèn),沒(méi)有任何感覺(jué)步驟二:配置upstream服務(wù)器集群池屬性
1)設(shè)置失敗次數(shù),超時(shí)時(shí)間,權(quán)重
weight可以設(shè)置后臺(tái)服務(wù)器的權(quán)重,max_fails可以設(shè)置后臺(tái)服務(wù)器的失敗次數(shù),fail_timeout可以設(shè)置后臺(tái)服務(wù)器的失敗超時(shí)時(shí)間。
2)重新加載配置
[root@proxy ~]# /usr/local/nginx/sbin/nginx -s reload #請(qǐng)先確保nginx是啟動(dòng)狀態(tài),否則運(yùn)行該命令會(huì)報(bào)錯(cuò),報(bào)錯(cuò)信息如下: #[error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory)步驟三:配置upstream服務(wù)器集群的調(diào)度算法
1)設(shè)置相同客戶端訪問(wèn)相同Web服務(wù)器
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf .. .. http { .. .. upstream webserver { #通過(guò)ip_hash設(shè)置調(diào)度規(guī)則為:相同客戶端訪問(wèn)相同服務(wù)器ip_hash;server 192.168.2.100 weight=1 max_fails=2 fail_timeout=10;server 192.168.2.200 weight=2 max_fails=2 fail_timeout=10;} .. .. server {listen 80;server_name www.tarena.com;location / {proxy_pass http://webserver;} }2)重新加載配置
root@proxy ~]# /usr/local/nginx/sbin/nginx -s reload #請(qǐng)先確保nginx是啟動(dòng)狀態(tài),否則運(yùn)行該命令會(huì)報(bào)錯(cuò),報(bào)錯(cuò)信息如下: #[error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory)3 ) 客戶端使用瀏覽器訪問(wèn)代理服務(wù)器測(cè)試輪詢效果
[root@client ~]# curl http://192.168.4.5 //使用該命令多次訪問(wèn)查看效果TCP/UDP調(diào)度
模塊
- ngx_stream_core_module模塊
- 使用==–with-stream==開(kāi)啟該模塊
注意:
nginx從1.9版本才開(kāi)始支持該功能
語(yǔ)法格式
注意事項(xiàng):做四層代理修改配置文件一定要在在http{}外面配置
問(wèn)題
使用Nginx實(shí)現(xiàn)TCP/UDP調(diào)度器功能,實(shí)現(xiàn)如下功能:
后端SSH服務(wù)器兩臺(tái)
Nginx編譯安裝時(shí)需要使用–with-stream,開(kāi)啟ngx_stream_core_module模塊
Nginx采用輪詢的方式調(diào)用后端SSH服務(wù)器
方案
使用4臺(tái)RHEL7虛擬機(jī),其中一臺(tái)作為Nginx代理服務(wù)器,該服務(wù)器需要配置兩塊網(wǎng)卡,IP地址分別為192.168.4.5和192.168.2.5,兩臺(tái)SSH服務(wù)器IP地址分別為192.168.2.100和192.168.2.200。客戶端測(cè)試主機(jī)IP地址為192.168.4.10。如圖-2所示。
步驟一:部署支持4層TCP/UDP代理的Nginx服務(wù)器
1)部署nginx服務(wù)器
編譯安裝必須要使用–with-stream參數(shù)開(kāi)啟4層代理模塊。
2 ) 修改nginx的配置文件
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf16 stream {17 upstream backend {18 server 192.168.2.100:22; //后端SSH服務(wù)器的IP和端口19 server 192.168.2.200:22;20 }21 server {22 listen 12345; //Nginx監(jiān)聽(tīng)的端口,不要使用22端口,會(huì)產(chǎn)生端口的沖突23 proxy_pass backend; 24 }25 } 26 27 http {28 include mime.types;29 ......端口沖突
網(wǎng)絡(luò)原則: IP地址對(duì)應(yīng)唯一的一臺(tái)主機(jī),端口對(duì)應(yīng)唯一的一個(gè)服務(wù)
當(dāng)兩個(gè)服務(wù)都想霸占一個(gè)端口時(shí)會(huì)產(chǎn)生沖突
3 ) 重起服務(wù)
[root@proxy ~]# /usr/local/nginx/sbin/nginx [root@proxy ~]# /usr/local/nginx/sbin/nginx -s reload #請(qǐng)先確保nginx是啟動(dòng)狀態(tài),否則運(yùn)行該命令會(huì)報(bào)錯(cuò),報(bào)錯(cuò)信息如下: #[error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory)4 ) 客戶端使用訪問(wèn)代理服務(wù)器測(cè)試輪詢效果
[root@client ~]# ssh 192.168.4.5 //如果不指定-p選項(xiàng),則默認(rèn)進(jìn)入22端口,進(jìn)入到proxy [root@proxy ~]# [root@client ~]# ssh 192.168.4.5 -p 12345 //根據(jù)輪詢的原則顯示 [root@web1 ~]# exit [root@client ~]# ssh 192.168.4.5 -p 12345 [root@web2 ~]# exitNginx常見(jiàn)問(wèn)題處理
問(wèn)題
本案例要求對(duì)Nginx服務(wù)器進(jìn)行適當(dāng)優(yōu)化,解決如下問(wèn)題,以提升服務(wù)器的處理性能:
- 如何自定義返回給客戶端的404錯(cuò)誤頁(yè)面
- 如何查看服務(wù)器狀態(tài)信息
- 如果客戶端訪問(wèn)服務(wù)器提示“Too many open files”如何解決
- 如何解決客戶端訪問(wèn)頭部信息過(guò)長(zhǎng)的問(wèn)題
- 如何讓客戶端瀏覽器緩存數(shù)據(jù)
客戶機(jī)訪問(wèn)此Web服務(wù)器驗(yàn)證效果:
- 使用ab壓力測(cè)試軟件測(cè)試并發(fā)量
- 編寫(xiě)測(cè)試腳本生成長(zhǎng)頭部信息的訪問(wèn)請(qǐng)求
- 客戶端訪問(wèn)不存在的頁(yè)面,測(cè)試404錯(cuò)誤頁(yè)面是否重定向
自定義報(bào)錯(cuò)頁(yè)面
1)優(yōu)化前,客戶端使用瀏覽器訪問(wèn)不存在的頁(yè)面,會(huì)提示404文件未找到
[root@client ~]# firefox http://192.168.4.5/xxxxx //訪問(wèn)一個(gè)不存在的頁(yè)面 <html> <head><title>404 Not Found</title></head> <body bgcolor="white"> <center><h1>404 Not Found</h1></center> <hr><center>nginx/1.12.2</center> </body> </html>2 ) 修改Nginx配置文件,自定義報(bào)錯(cuò)頁(yè)面
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf .. ..charset utf-8; //僅在需要中文時(shí)修改該選項(xiàng) error_page 404 /404.html; //自定義錯(cuò)誤頁(yè)面 .. .. [root@proxy ~]# vim /usr/local/nginx/html/404.html //生成錯(cuò)誤頁(yè)面 偶買噶,沒(méi)有頁(yè)面啦 [root@proxy ~]# usr/local/nginx/sbin/nginx -s reload #請(qǐng)先確保nginx是啟動(dòng)狀態(tài),否則運(yùn)行該命令會(huì)報(bào)錯(cuò),報(bào)錯(cuò)信息如下: #[error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory)3 ) 優(yōu)化后,客戶端使用瀏覽器訪問(wèn)不存在的頁(yè)面,會(huì)提示自己定義的40x.html頁(yè)面
[root@client ~]# firefox 192.168.4.5/udhuishdi常見(jiàn)的http代碼
| 100 | 請(qǐng)求已接收,客戶端可以繼續(xù)發(fā)送請(qǐng)求 |
| 101 | Switching Protocals 服務(wù)器根據(jù)客戶端的請(qǐng)求切換協(xié)議 |
| 200 | 一切正常 |
| 201 | 服務(wù)器已經(jīng)創(chuàng)建了文檔 |
| 202 | 服務(wù)器已接收了請(qǐng)求,但處理尚未完成 |
| 203 | 文檔正常返回,但一些頭部信息可能不正確 |
| 300 | 客戶端請(qǐng)求的資源可以在多個(gè)位置找到 |
| 301 | 永久重定向 |
| 302 | 臨時(shí)重定向 |
| 305 | 使用代理服務(wù) |
| 400 | 請(qǐng)求語(yǔ)法錯(cuò)誤 |
| 401 | 用戶名或密碼錯(cuò)誤,客戶被拒絕 |
| 401.1 | 登錄失敗 |
| 403 | 禁止訪問(wèn)(客戶端IP地址被拒絕) |
| 404 | 文件不存在 |
| 406 | 指定資源已找到,但MIME類型與客戶端要求不兼容 |
| 406.6 | IP地址被拒絕 |
| 403. | 9用戶數(shù)過(guò)多 |
| 414 | 請(qǐng)求URL頭部過(guò)長(zhǎng) |
| 500 | 服務(wù)器內(nèi)部錯(cuò)誤 |
| 501 | 服務(wù)器不支持客戶端的請(qǐng)求功能 |
| 502 | Bad Gateway網(wǎng)關(guān)錯(cuò)誤,一般是做了集群,找不著后臺(tái)服務(wù)器,服務(wù)器作為網(wǎng)關(guān)或者代理時(shí),為了完成請(qǐng)求訪問(wèn)下一個(gè)服務(wù)器,當(dāng)該服務(wù)器返回了非法應(yīng)答 |
| 503 | 服務(wù)不可用 |
| 504 | 網(wǎng)關(guān)超時(shí),服務(wù)器處于維護(hù)或者負(fù)載過(guò)高無(wú)法響應(yīng) |
| 505 | 服務(wù)器不支持客戶端請(qǐng)求的HTTP版本 |
返回狀態(tài)碼規(guī)律
- 200開(kāi)頭代表一切正常
- 300開(kāi)頭代表重定向
- 400開(kāi)頭代表客戶端問(wèn)題
- 500開(kāi)頭代表服務(wù)器內(nèi)部問(wèn)題
查看服務(wù)器的狀態(tài)信息
如何查看服務(wù)器狀態(tài)信息(非常重要的功能)
1)編譯安裝時(shí)使用–with-http_stub_status_module開(kāi)啟狀態(tài)頁(yè)面模塊
再次重新編譯安裝nginx
2)啟用Nginx服務(wù)并查看監(jiān)聽(tīng)端口狀態(tài)
ss命令可以查看系統(tǒng)中啟動(dòng)的端口信息,該命令常用選項(xiàng)如下:
-a顯示所有端口的信息
-n以數(shù)字格式顯示端口號(hào)
-t顯示TCP連接的端口
-u顯示UDP連接的端口
-l顯示服務(wù)正在監(jiān)聽(tīng)的端口信息,如httpd啟動(dòng)后,會(huì)一直監(jiān)聽(tīng)80端口
-p顯示監(jiān)聽(tīng)端口的服務(wù)名稱是什么(也就是程序名稱) 注意:在RHEL7系統(tǒng)中可以使用ss命令替代netstat命令,功能一樣,選項(xiàng)一樣。
3 ) 修改nginx配置文件
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf35 server {36 listen 80;37 server_name localhost;38 39 location /status { #如果用戶要訪問(wèn)status,那么40 stub_status on;# allow IP地址(管理員IP)# deny ip地址(all) #只允許管理員查看狀態(tài)41 } [root@proxy ~]# /usr/local/nginx/sbin/nginx [root@proxy ~]# /usr/local/nginx/sbin/nginx -s reload4)優(yōu)化后,查看狀態(tài)頁(yè)面信息
[root@proxy ~]# curl http://192.168.4.5/status Active connections: 1 server accepts handled requests 1 1 1 Reading: 0 Writing: 1 Waiting: 0
Active connections:當(dāng)前活動(dòng)的連接數(shù)量。
Accepts Handled Requests:服務(wù)端已經(jīng)接受客戶端連接總數(shù)和已經(jīng)處理客戶端的連接總數(shù)
(一般與accepts一致,除非服務(wù)器限制了連接數(shù)量)。
數(shù)量只會(huì)增高. 重啟nginx的時(shí)候會(huì)重置為0.
第一個(gè)數(shù)字代表客戶端發(fā)送多少次請(qǐng)求連接
第二個(gè)數(shù)字代表服務(wù)端處理了多少次客戶端的請(qǐng)求
第三個(gè)數(shù)字代表網(wǎng)頁(yè)點(diǎn)擊量,刷新一次要一次頁(yè)面
Reading:當(dāng)前服務(wù)器正在讀取客戶端請(qǐng)求頭的數(shù)量。
Writing:當(dāng)前服務(wù)器正在寫(xiě)響應(yīng)信息的數(shù)量。
Waiting:當(dāng)前多少客戶端在等待服務(wù)器的響應(yīng)。
優(yōu)化Nginx并發(fā)量
1)優(yōu)化前使用ab高并發(fā)測(cè)試
[root@proxy ~]# ab -n 2000 -c 2000 http://192.168.4.5/ Benchmarking 192.168.4.5 (be patient) socket: Too many open files (24) //提示打開(kāi)文件數(shù)量過(guò)多2 )修改Nginx配置文件,增加并發(fā)量
[root@proxy ~]# lscpu CPU(s): 2 #雙核 [root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf .. .. worker_processes 2; //與CPU核心數(shù)量一致 events { worker_connections 65535; //每個(gè)worker最大并發(fā)連接數(shù),理論值5萬(wàn)#這兩行的兩個(gè)參數(shù)與并發(fā)量有關(guān)#端口號(hào)最大數(shù): 65535 } .. .. [root@proxy ~]# /usr/local/nginx/sbin/nginx -s reload3)優(yōu)化Linux內(nèi)核參數(shù)(最大文件數(shù)量,1024)
[root@proxy ~]# ulimit -a //查看所有屬性值open files (-n) 1024 //最多開(kāi)多少文件max user processes (-u) 5569 //最多開(kāi)多少程序 [root@proxy ~]# ulimit -Hn 100000 //設(shè)置硬限制(臨時(shí)規(guī)則) [root@proxy ~]# ulimit -Sn 100000 //設(shè)置軟限制(臨時(shí)規(guī)則) [root@proxy ~]# ulimit -a //再次查看open files (-n) 100000 [root@proxy ~]# ab -c 2000 -n 2000 http://192.168.4.5/ //再次查看,此時(shí)就可以直接看到回復(fù)[root@proxy ~]# vim /etc/security/limits.conf.. .. * soft nofile 100000 * hard nofile 100000 #該配置文件分4列,分別如下: #用戶或組 硬限制或軟限制 需要限制的項(xiàng)目 限制的值4)優(yōu)化后測(cè)試服務(wù)器并發(fā)量(因?yàn)榭蛻舳藳](méi)調(diào)內(nèi)核參數(shù),所以在proxy測(cè)試)
[root@proxy ~]# ab -n 2000 -c 2000 http://192.168.4.5/優(yōu)化Nginx數(shù)據(jù)包頭緩存
1)優(yōu)化前,使用腳本測(cè)試長(zhǎng)頭部請(qǐng)求是否能獲得響應(yīng)
[root@proxy ~]# ls /opt/lnmp_soft/buffer.sh /opt/lnmp_soft/buffer.sh [root@proxy ~]# cd /opt/lnmp_soft/ [root@proxy lnmp_soft]# ./buffer.sh <html> <head><title>414 Request-URI Too Large</title></head> ##出現(xiàn)414報(bào)錯(cuò) <body bgcolor="white"> <center><h1>414 Request-URI Too Large</h1></center> ##提示URI地址欄頭部信息過(guò)大 <hr><center>nginx/1.12.2</center> </body> </html>2 ) 修改Nginx配置文件,增加數(shù)據(jù)包頭部緩存大小
[root@proxy ~]# vim /usr/local/nginx/conf/nginx.conf .. .. http { client_header_buffer_size 1k; //默認(rèn)請(qǐng)求包頭信息的緩存 large_client_header_buffers 4 4k; //大請(qǐng)求包頭部信息的緩存?zhèn)€數(shù)與容量,4個(gè)乘4k .. .. } [root@proxy ~]# /usr/local/nginx/sbin/nginx -s reload3)優(yōu)化后,使用腳本測(cè)試長(zhǎng)頭部請(qǐng)求是否能獲得響應(yīng)
[root@proxy lnmp_soft]# ./buffer.sh <!DOCTYPE html> <html> <head> <title>Welcome to nginx!</title> <style>body {width: 35em;margin: 0 auto;font-family: Tahoma, Verdana, Arial, sans-serif;} </style> </head> <body> <h1>Welcome to nginx!</h1> <p>If you see this page, the nginx web server is successfully installed and working. Further configuration is required.</p><p>For online documentation and support please refer to <a href="http://nginx.org/">nginx.org</a>.<br/> Commercial support is available at <a href="http://nginx.com/">nginx.com</a>.</p><p><em>Thank you for using nginx.</em></p> </body> </html>瀏覽器本地緩存靜態(tài)數(shù)據(jù)
1)使用Firefox瀏覽器查看緩存
以Firefox瀏覽器為例,在Firefox地址欄內(nèi)輸入about:cache將顯示Firefox瀏覽器的緩存信息,如圖-3所示,點(diǎn)擊List Cache Entries可以查看詳細(xì)信息。
disk (目前緩存的信息有多少)
Number of entries: 緩存數(shù)
Maximum storage size: 最大緩存
Storage in use: 緩存大小
Storage disk location: 緩存路徑
List Cache Entries 查看曾經(jīng)緩存的資料
2)清空f(shuō)irefox本地緩存數(shù)據(jù),如圖-4所示。
3)修改Nginx配置文件,定義對(duì)靜態(tài)頁(yè)面的緩存時(shí)間
4)優(yōu)化后,使用Firefox瀏覽器訪問(wèn)圖片,再次查看緩存信息
[root@client ~]# firefox http://192.168.4.5/day.jpg總結(jié)
- 上一篇: LNMP动态网站
- 下一篇: Session与Cookie