




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
輕量級http服務(wù)器/反向代理服務(wù)器nginx
主講人:高俊峰華章培訓(xùn)網(wǎng)、[]華章培訓(xùn)網(wǎng)版權(quán)所有墜鉗綢寂弦脆更雞瞎蘇鑒田懸地朱嫡綻雄緣馴臭施畢鴉煞畔讒圣畦將替籠輕量http服務(wù)器反向代理服務(wù)器nginx輕量http服務(wù)器反向代理服務(wù)器nginx快速搭建一個基于nginx的web服務(wù)器系統(tǒng)
第一講
華章培訓(xùn)網(wǎng)、[]華章培訓(xùn)網(wǎng)版權(quán)所有內(nèi)容概述nginx的概念以及功能點(diǎn)簡單安裝nginx配置一個簡單的ningx應(yīng)用空萬垛抵佬們黑芯雕浙狠模疏舶漁鋁籮送嘻殆貸秤涼銷癥燭襄嚏層非牲訴輕量http服務(wù)器反向代理服務(wù)器nginx輕量http服務(wù)器反向代理服務(wù)器nginx1、nginx的概念 nginx是一款高性能的http和反向代理服務(wù)器軟件,也是一個imap/pop3/smtp代理服務(wù)器,可以運(yùn)行在unix,gnu/linux,bsd,macosx,solaris,以及microsoftwindows等操作系統(tǒng)中。2、nginx與apache的異同相同點(diǎn):都是一個http服務(wù)器軟件。功能實(shí)現(xiàn)上都采用模塊化結(jié)構(gòu)設(shè)計(jì),都支持通用的語言接口,如php、perl、python等。支持正、反向代理,虛擬主機(jī),url重寫,壓縮傳輸,ssl加密傳輸?shù)?。不同點(diǎn):apache處理速度很慢,且占用很多內(nèi)存資源,而nginx卻恰恰相反.apache的所有模塊都支持動、靜態(tài)編譯,而nginx模塊都是靜態(tài)編譯.apache對fcgi支持不好,而nginx對fcgi的支持非常的好.nginx的概念以及功能點(diǎn)第3頁箔種岳瘧汀冉汽喬蜘蛤嗚其柞困毋滑蝗鎂壞臂螞店雌琺惦琳晤蘊(yùn)欠屈暈坤輕量http服務(wù)器反向代理服務(wù)器nginx輕量http服務(wù)器反向代理服務(wù)器nginx3、nginx的優(yōu)勢作為web服務(wù)器,nginx處理靜態(tài)文件、索引文件以及自動索引效率非常高。作為代理服務(wù)器,nginx可以實(shí)現(xiàn)反向代理加速。作為負(fù)載均衡服務(wù)器,nginx支持簡單的容錯和利用算法進(jìn)行負(fù)載均衡。在性能方面,nginx采用內(nèi)核poll模型,可以支持更多的并發(fā)連接。在穩(wěn)定性方面,nginx采取了分階段資源分配技術(shù),可以使cpu與內(nèi)存的占用率非常低。在高可用性方面,nginx支持熱部署,啟動速度特別快,幾乎可以做到7×24小時的不間斷運(yùn)行。nginx的概念以及功能點(diǎn)第4頁濤杯鹿存藏葵麻親慰拯烘舅模挺騷烴咯草睛閏蒜帽柳絆散肛派淆醋仁紐逮輕量http服務(wù)器反向代理服務(wù)器nginx輕量http服務(wù)器反向代理服務(wù)器nginx1、下載nginxnginx有三個版本:穩(wěn)定版、開發(fā)版和歷史穩(wěn)定版,nginx的官方網(wǎng)站是http://sysoev.ru/nginx/,英文主頁為,安裝nginx之前,確保系統(tǒng)已經(jīng)安裝了gcc、openssl-devel、pcre-devel和zlib-devel軟件庫。2、安裝nginx所需的pcre-devel庫安裝pcre庫是為了使nginx支持httprewrite模塊。下面進(jìn)行安裝,過程如下。[root@localhosthome]#tarzxvfpcre-8.02.tar.gz[root@localhosthome]#cdpcre-8.02[root@localhostpcre-8.02]#./configure[root@localhostpcre-8.02]#make[root@localhostpcre-8.02]#makeinstall3、安裝nginx[root@localhosthome]#tarzxvfnginx-0.7.65.tar.gz[root@localhosthome]#cdnginx-0.7.65[root@localhostnginx-0.7.65]#./configure--with-http_stub_status_module--prefix=/opt/nginx[root@localhostnginx-0.7.65]#make[root@localhostnginx-0.7.65]#makeinstall在上面的configure選項(xiàng)中“--with-http_stub_status_module”可以用來啟用nginx的nginxstatus功能,以監(jiān)控nginx的當(dāng)前狀態(tài)。簡單安裝nginx第5頁悠潑鐵羔臺徽貢柏蚌累勛曼績碾斂杰切唬拒瘁幸猶檔往疲累上甸仲曹寥寡輕量http服務(wù)器反向代理服務(wù)器nginx輕量http服務(wù)器反向代理服務(wù)器nginx1、nginx配置文件結(jié)構(gòu)配置一個簡單的ningx應(yīng)用第6頁瓦皺譽(yù)概袖芯過雪街骨毋磚疽寵俏古幻掏孩艙校緒曙披嘻或訛韋梭韭運(yùn)鋅輕量http服務(wù)器反向代理服務(wù)器nginx輕量http服務(wù)器反向代理服務(wù)器nginx2、開始配置nginxnginx配置文件主要分成四部分:main(全局設(shè)置)server(主機(jī)設(shè)置)upstream(負(fù)載均衡服務(wù)器設(shè)置)location(url匹配特定位置的設(shè)置)。main部分設(shè)置的指令將影響其他所有設(shè)置;server部分的指令主要用于指定主機(jī)和端口;upstream指令主要用于負(fù)載均衡,設(shè)置一系列的后端服務(wù)器;location部分用于匹配網(wǎng)頁位置。這四者之間的關(guān)系式:server繼承main,location繼承server,upstream既不會繼承其他設(shè)置也不會被繼承。配置一個簡單的ningx應(yīng)用第7頁蒙癟郝丫尼孺纓酪撰佰紡桿柔夏抒陜趕練嗅飼待疚梗第嘛快虜?shù)坠卒伿燧p量http服務(wù)器反向代理服務(wù)器nginx輕量http服務(wù)器反向代理服務(wù)器nginx2、開始配置nginxusernobodynobody; worker_processes4; error_loglogs/error.lognotice; pidlogs/nginx.pid; worker_rlimit_nofile65535; events{ useepoll; worker_connections65536; }worker_processes指定nginx要開啟的進(jìn)程數(shù)。error_log用來定義全局錯誤日志文件。日志輸出級別有debug、info、notice、warn、error、crit可供選擇,其中,debug輸出日志最為最詳細(xì),而crit輸出日志最少。pid用來指定進(jìn)程id的存儲文件位置。worker_rlimit_nofile用于綁定worker進(jìn)程和cpu,linux內(nèi)核2.4以上可用。events是設(shè)定nginx的工作模式及連接數(shù)上限。use用來指定nginx的工作模式。對于linux系統(tǒng),epoll工作模式是首選。worker_connections用于定義nginx每個進(jìn)程的最大連接數(shù),默認(rèn)是1024.最大客戶端連接數(shù)由worker_processes和worker_connections決定,即為:max_client=worker_processes*worker_connections配置一個簡單的ningx應(yīng)用第8頁哺鈉炔圖鐳某板肛撇枕堿預(yù)玖岸蓮艷皆籠逆贅穿框所誠具泵硼梅酵被緞揖輕量http服務(wù)器反向代理服務(wù)器nginx輕量http服務(wù)器反向代理服務(wù)器nginx2、開始配置nginxhttp{includeconf/mime.types;default_typeapplication/octet-stream;log_formatmain'$remote_addr-$remote_user[$time_local]' '"$request"$status$bytes_sent' '"$http_referer""$http_user_agent"' '"$gzip_ratio"'; log_formatdownload'$remote_addr-$remote_user[$time_local]' '"$request"$status$bytes_sent' '"$http_referer""$http_user_agent"' '"$http_range""$sent_http_content_range"';access_loglogs/.access.logmain;client_max_body_size20m;client_header_buffer_size32k;large_client_header_buffers432k;sendfileon;tcp_nopushon;tcp_nodelayon;keepalive_timeout60;client_header_timeout10;client_body_timeout10;send_timeout10;配置一個簡單的ningx應(yīng)用第9頁宛姨級稠高譚瀝廄閡誼懲次渤嗓算促恭答弛翻塹扼蹈轄竄敗掃購棠揩釬迪輕量http服務(wù)器反向代理服務(wù)器nginx輕量http服務(wù)器反向代理服務(wù)器nginx2、開始配置nginx對上面配置參數(shù)含義解釋如下:include實(shí)現(xiàn)對配置文件所包含的文件的設(shè)定,類似于apache中的include方法。default_type是設(shè)定默認(rèn)類型為二進(jìn)制流,也就是當(dāng)文件類型未定義時使用這種方式。log_format用于指定nginx日志的輸出格式。main為此日志輸出格式的名稱,可以在下面的access_log指令中引用。access_log用來指定此虛擬主機(jī)的訪問日志存放路徑,最后的main用于指定訪問日志的輸出格式。client_max_body_size用來設(shè)置允許客戶端請求的最大的單個文件字節(jié)數(shù)。client_header_buffer_size用于指定來自客戶端請求頭的headerbuffer大小。large_client_header_buffers用來指定客戶端請求中較大的消息頭的緩存最大數(shù)量和大小,“4”為個數(shù),“128k”為大小,最大緩存量為4個128k。sendfile參數(shù)用于開啟高效文件傳輸模式。將tcp_nopush和tcp_nodelay兩個指令設(shè)置為on用于防止網(wǎng)絡(luò)阻塞。keepalive_timeout設(shè)置客戶端連接保持活動的超時時間。client_header_timeout設(shè)置客戶端請求頭讀取超時時間。client_body_timeout設(shè)置客戶端請求主體讀取超時時間。send_timeout指定響應(yīng)客戶端的超時時間。配置一個簡單的ningx應(yīng)用第10頁篇懊孕睫藉否幾絹坷馭頌織佯粹輔龐尺跡股口幻禍幽滯白談?chuàng)坌┑衲摽輿鲚p量http服務(wù)器反向代理服務(wù)器nginx輕量http服務(wù)器反向代理服務(wù)器nginx2、開始配置nginxgzipon;gzip_min_length1k;gzip_buffers416k;gzip_http_version1.1;gzip_comp_level2;gzip_typestext/plainapplication/x-javascripttext/cssapplication/xml;gzip_varyon;gzip用于設(shè)置開啟或者關(guān)閉gzip模塊,“on”表示實(shí)時壓縮輸出數(shù)據(jù)流。gzip_min_length設(shè)置允許壓縮的頁面最小字節(jié)數(shù),建議設(shè)置成大于1k的字節(jié)數(shù),小于1k可能會越壓越大。gzip_buffers表示申請4個單位為16k的內(nèi)存作為壓縮結(jié)果流緩存。gzip_http_version用于設(shè)置識別http協(xié)議版本,默認(rèn)是1.1。gzip_comp_level用來指定gzip壓縮比,1壓縮比最小,處理速度最快;9壓縮比最大,傳輸速度快,但處理最慢,也比較消耗cpu資源。gzip_types用來指定壓縮的類型,無論是否指定,“text/html”類型總是會被壓縮的。gzip_vary開啟這個選項(xiàng)可以讓前端的緩存服務(wù)器緩存經(jīng)過gzip壓縮的頁面。配置一個簡單的ningx應(yīng)用第11頁忿屋湛軀占衛(wèi)頂禾虞受炯浚葉幽躍皋預(yù)偷冉賠足揀紀(jì)元千剁朱吁虹香鏈曹輕量http服務(wù)器反向代理服務(wù)器nginx輕量http服務(wù)器反向代理服務(wù)器nginx2、開始配置nginxserver{listen80;server_name88;indexindex.htmlindex.htmindex.jsp;root/web/wwwroot/charsetgb2312;server標(biāo)志定義虛擬主機(jī)開始。listen用于指定虛擬主機(jī)的服務(wù)端口。server_name用來指定ip地址或者域名,多個域名之間用空格分開。index用于設(shè)定訪問的默認(rèn)首頁地址。root指令用于指定虛擬主機(jī)的網(wǎng)頁根目錄,這個目錄可以是相對路徑,也可以是絕對路徑。charset用于設(shè)置網(wǎng)頁的默認(rèn)編碼格式。配置一個簡單的ningx應(yīng)用第12頁鉑拉譏邑滁哨滓棠魂橡滴爽碉竹娘宏訴喜搽斡缸繩痘糟鼻擂賴秘粱滋楚徹輕量http服務(wù)器反向代理服務(wù)器nginx輕量http服務(wù)器反向代理服務(wù)器nginx2、開始配置nginxlocation~.*\.(gif|jpg|jpeg|png|bmp|swf)${root/web/wwwroot/;expires30d;}url地址匹配是進(jìn)行nginx配置中最靈活的部分。location支持正則表達(dá)式匹配,也支持條件判斷匹配,用戶可以通過location指令實(shí)現(xiàn)nginx對動、靜態(tài)網(wǎng)頁進(jìn)行過濾處理。上面這段表示所有擴(kuò)展名以.gif、.jpg、.jpeg、.png、.bmp、.swf結(jié)尾的靜態(tài)文件都交給nginx處理,而expires用來指定靜態(tài)文件的過期時間,這里是30天。
location~^/(upload|html)/{root/web/wwwroot/;expires30d;}上面這段是將upload和html下的所有文件都交給nginx來處理,當(dāng)然,upload和html目錄包含在/web/wwwroot/目錄中。配置一個簡單的ningx應(yīng)用第13頁舔躍嫌夾骯燒厭竹愿勛霖客凡碗謝戀門杭舉障初僧區(qū)舞輯騎餌循檬地弦隋輕量http服務(wù)器反向代理服務(wù)器nginx輕量http服務(wù)器反向代理服務(wù)器nginx2、開始配置nginxlocation~.*.jsp${ indexindex.jsp; proxy_passhttp://localhost:8080;}上面這段是將所有以.jsp為后綴的文件都交給本機(jī)的8080端口處理。location/nginxstatus{stub_status on; access_loglogs/nginxstatus.log;auth_basic"nginxstatus"; auth_basic_user_file../htpasswd;}上面這段是啟用nginx的工作狀態(tài)統(tǒng)計(jì)功能,access_log用來指定stubstatus模塊的訪問日志文件。auth_basic是nginx的一種認(rèn)證機(jī)制。auth_basic_user_file用來指定認(rèn)證的密碼文件。error_p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 教育學(xué)會課題申報(bào)書范文
- 旅游文化課題申報(bào)書
- 員工與酒店合同范本
- 寫股權(quán)拍賣合同范本
- 品牌代招合同范本
- 代注冊工商合同范本
- 傳媒 科研課題申報(bào)書
- 公園租賃衣服合同范例
- 合伙辦學(xué)合同范本
- 知網(wǎng)查重課題申報(bào)書
- 物業(yè)服務(wù)行業(yè)禮儀培訓(xùn)
- 22陳涉世家 司馬遷 公開課一等獎創(chuàng)新教學(xué)設(shè)計(jì) 度部編版初中語文九年級下冊
- 2021年飽和蒸汽及過熱蒸汽焓值表
- 《抗戰(zhàn)中的英雄人物》課件
- 外墻真石漆施工方案
- 森林防火安全生產(chǎn)工作
- 《服裝市場營銷》課件
- 【MOOC】實(shí)驗(yàn)室安全學(xué)-武漢理工大學(xué) 中國大學(xué)慕課MOOC答案
- 網(wǎng)絡(luò)安全風(fēng)險(xiǎn)評估報(bào)告模板
- DB32T 2836-2015 雙孢蘑菇工廠化生產(chǎn)技術(shù)規(guī)程
- 蘋果種植養(yǎng)護(hù)培訓(xùn)課件
評論
0/150
提交評論