nginx反向代理和負載均衡《實戰(zhàn)》

一己肮、nginx反向代理

反向代理服務器:192.168.4.51

HTTP1:192.168.4.52

HTTP2:192.168.4.53


安裝方法參考上篇?關鍵字【nginx安裝】

Nginx主機

vim /usr/local/nginx/conf/nginx.conf

? ? server {

? ? ? ? listen? ? ? 80; #監(jiān)聽端口

? ? ? ? server_name? www.waiwang.com; #用來指定IP地址或者域名甚带,多個域名之間用空格分開

? ? ? ? #charset koi8-r;

? ? ? ? #access_log? logs/host.access.log? main;

? ? ? ? location / { #根目錄

? ? ? ? ? ? root? html; #指定虛擬主機的網(wǎng)頁根目錄

? ? ? ? ? ? proxy_pass http://192.168.4.52:80; #代理的主機和端口? ? ? ? ? ? index? index.html index.htm; #默認首頁地址

? ? ? ? }

? ? server {

? ? ? ? listen? ? ? 80;

? ? ? ? server_name? www.web02.com;

? ? #? ? listen? ? ? somename:8080;

? ? #? ? server_name? somename? alias? another.alias;

? ? ? ? location / {

? ? ? ? ? ? root? html;

? ? ? ? ? ? proxy_pass http://192.168.4.53:80;? ? ? ? ? ? index? index.html index.htm;

? ? ? ? }

? ? }


http1:

安裝完成后扣草,用來測試

echo 官網(wǎng)1 >> /var/www/html/index.html

http2:

安裝完成后,用來測試

echo 官網(wǎng)2? >> /var/www/html/index.html



重啟nginx并驗證

/usr/local/nginx/sbin/nginx? -s? stop

/usr/local/nginx/sbin/nginx



curl?www.web01.com

curl www.web02.com

調度算法



二氨鹏、負載均衡

Nginx主機

vim /usr/local/nginx/conf/nginx.conf

upstream nginx { #定義組? ? 下面是主機

? ? ? ? server 192.168.4.52:80;

? ? ? ? server 192.168.4.53:80;

}

? ? server {

? ? ? ? listen? ? ? 80; #端口

? ? ? ? server_name? www.waiwang.com; #域名

? ? ? ? #charset koi8-r;

? ? ? ? #access_log? logs/host.access.log? main;

? ? ? ? location / { #根目錄

? ? ? ? ? ? root? html;

? ? ? ? ? ? proxy_pass http://nginx; #調用服務組? ? ? ? ? ? index? index.html index.htm;

? ? ? ? }

http1:

安裝完成后欧募,用來測試

echo?官網(wǎng)1?>> /var/www/html/index.html

http1:

安裝完成后,用來測試

echo?官網(wǎng)2??>> /var/www/html/index.html

重啟nginx并驗證

/usr/local/nginx/sbin/nginx? -s? stop

/usr/local/nginx/sbin/nginx


curl?www.waiwang.com


關于運維學習仆抵、分享跟继、交流,筆者開通了微信公眾號【大隆愛分享】镣丑,感興趣的朋友可以關注下还栓,歡迎加入,建立屬于我們自己的小圈子传轰,一起學運維知識剩盒。

有需要技術交流的小伙伴可以加我微信,期待與大家共同成長慨蛙,本人微信:可在公眾號獲取

三辽聊、nginx編譯參數(shù)

--prefix= 指向安裝目錄

--sbin-path 指向(執(zhí)行)程序文件(nginx)

--conf-path= 指向配置文件(nginx.conf)

--error-log-path= 指向錯誤日志目錄

--pid-path= 指向pid文件(nginx.pid)

--lock-path= 指向lock文件(nginx.lock)(安裝文件鎖定,防止安裝文件被別人利用期贫,或自己誤操作跟匆。)

--user= 指定程序運行時的非特權用戶

--group= 指定程序運行時的非特權用戶組

--builddir= 指向編譯目錄

--with-rtsig_module 啟用rtsig模塊支持(實時信號)

--with-select_module 啟用select模塊支持(一種輪詢模式,不推薦在高載環(huán)境下使用)禁用:--without-select_module

--with-poll_module 啟用poll模塊支持(功能與select相同,與select特性相同通砍,為一種輪詢模式,不推薦在高載環(huán)境下使用)

--with-file-aio 啟用file aio支持(一種APL文件傳輸格式)

--with-ipv6 啟用ipv6支持

--with-http_ssl_module 啟用ngx_http_ssl_module支持(使支持https請求玛臂,需已安裝openssl)

--with-http_realip_module 啟用ngx_http_realip_module支持(這個模塊允許從請求標頭更改客戶端的IP地址值,默認為關)

--with-http_addition_module 啟用ngx_http_addition_module支持(作為一個輸出過濾器封孙,支持不完全緩沖迹冤,分部分響應請求)

--with-http_xslt_module 啟用ngx_http_xslt_module支持(過濾轉換XML請求)

--with-http_image_filter_module 啟用ngx_http_image_filter_module支持(傳輸JPEG/GIF/PNG 圖片的一個過濾器)(默認為不啟用。gd庫要用到)

--with-http_geoip_module 啟用ngx_http_geoip_module支持(該模塊創(chuàng)建基于與MaxMind GeoIP二進制文件相配的客戶端IP地址的ngx_http_geoip_module變量)

--with-http_sub_module 啟用ngx_http_sub_module支持(允許用一些其他文本替換nginx響應中的一些文本)

--with-http_dav_module 啟用ngx_http_dav_module支持(增加PUT,DELETE,MKCOL:創(chuàng)建集合,COPY和MOVE方法)默認情況下為關閉虎忌,需編譯開啟

--with-http_flv_module 啟用ngx_http_flv_module支持(提供尋求內存使用基于時間的偏移量文件)

--with-http_gzip_static_module 啟用ngx_http_gzip_static_module支持(在線實時壓縮輸出數(shù)據(jù)流)

--with-http_random_index_module 啟用ngx_http_random_index_module支持(從目錄中隨機挑選一個目錄索引)

--with-http_secure_link_module 啟用ngx_http_secure_link_module支持(計算和檢查要求所需的安全鏈接網(wǎng)址)

--with-http_degradation_module ?啟用ngx_http_degradation_module支持(允許在內存不足的情況下返回204或444碼)

--with-http_stub_status_module 啟用ngx_http_stub_status_module支持(獲取nginx自上次啟動以來的工作狀態(tài))

--without-http_charset_module 禁用ngx_http_charset_module支持(重新編碼web頁面泡徙,但只能是一個方向--服務器端到客戶端,并且只有一個字節(jié)的編碼可以被重新編碼)

--without-http_gzip_module 禁用ngx_http_gzip_module支持(該模塊同-with-http_gzip_static_module功能一樣)

--without-http_ssi_module 禁用ngx_http_ssi_module支持(該模塊提供了一個在輸入端處理處理服務器包含文件(SSI)的過濾器膜蠢,目前支持SSI命令的列表是不完整的)

--without-http_userid_module 禁用ngx_http_userid_module支持(該模塊用來處理用來確定客戶端后續(xù)請求的cookies)

--without-http_access_module 禁用ngx_http_access_module支持(該模塊提供了一個簡單的基于主機的訪問控制堪藐。允許/拒絕基于ip地址)

--without-http_auth_basic_module禁用ngx_http_auth_basic_module(該模塊是可以使用用戶名和密碼基于http基本認證方法來保護你的站點或其部分內容)

--without-http_autoindex_module 禁用disable ngx_http_autoindex_module支持(該模塊用于自動生成目錄列表,只在ngx_http_index_module模塊未找到索引文件時發(fā)出請求挑围。)

--without-http_geo_module 禁用ngx_http_geo_module支持(創(chuàng)建一些變量礁竞,其值依賴于客戶端的IP地址)

--without-http_map_module 禁用ngx_http_map_module支持(使用任意的鍵/值對設置配置變量)

--without-http_split_clients_module 禁用ngx_http_split_clients_module支持(該模塊用來基于某些條件劃分用戶。條件如:ip地址杉辙、報頭模捂、cookies等等)

--without-http_referer_module 禁用disable ngx_http_referer_module支持(該模塊用來過濾請求,拒絕報頭中Referer值不正確的請求)

--without-http_rewrite_module 禁用ngx_http_rewrite_module支持(該模塊允許使用正則表達式改變URI,并且根據(jù)變量來轉向以及選擇配置枫绅。如果在server級別設置該選項泉孩,那么他們將在 location之前生效硼端。如果在location還有更進一步的重寫規(guī)則并淋,location部分的規(guī)則依然會被執(zhí)行。如果這個URI重寫是因為location部分的規(guī)則造成的珍昨,那么 location部分會再次被執(zhí)行作為新的URI县耽。這個循環(huán)會執(zhí)行10次,然后Nginx會返回一個500錯誤镣典。)

--without-http_proxy_module 禁用ngx_http_proxy_module支持(有關代理服務器)

--without-http_fastcgi_module 禁用ngx_http_fastcgi_module支持(該模塊允許Nginx 與FastCGI 進程交互兔毙,并通過傳遞參數(shù)來控制FastCGI 進程工作。)FastCGI一個常駐型的公共網(wǎng)關接口兄春。

--without-http_uwsgi_module 禁用ngx_http_uwsgi_module支持(該模塊用來醫(yī)用uwsgi協(xié)議澎剥,uWSGI服務器相關)

--without-http_scgi_module 禁用ngx_http_scgi_module支持(該模塊用來啟用SCGI協(xié)議支持,SCGI協(xié)議是CGI協(xié)議的替代赶舆。它是一種應用程序與HTTP服務接口標準哑姚。它有些像FastCGI但他的設計更容易實現(xiàn)。)

--without-http_memcached_module 禁用ngx_http_memcached_module支持(該模塊用來提供簡單的緩存芜茵,以提高系統(tǒng)效率)

-without-http_limit_zone_module 禁用ngx_http_limit_zone_module支持(該模塊可以針對條件叙量,進行會話的并發(fā)連接數(shù)控制)

--without-http_limit_req_module 禁用ngx_http_limit_req_module支持(該模塊允許你對于一個地址進行請求數(shù)量的限制用一個給定的session或一個特定的事件)

--without-http_empty_gif_module 禁用ngx_http_empty_gif_module支持(該模塊在內存中常駐了一個1*1的透明GIF圖像,可以被非尘糯快速的調用)

--without-http_browser_module 禁用ngx_http_browser_module支持(該模塊用來創(chuàng)建依賴于請求報頭的值绞佩。如果瀏覽器為modern ,則$modern_browser等于modern_browser_value指令分配的值猪钮;如果瀏覽器為old品山,則$ancient_browser等于 ancient_browser_value指令分配的值;如果瀏覽器為 MSIE中的任意版本烤低,則 $msie等于1)

--without-http_upstream_ip_hash_module 禁用ngx_http_upstream_ip_hash_module支持(該模塊用于簡單的負載均衡)

--with-http_perl_module 啟用ngx_http_perl_module支持(該模塊使nginx可以直接使用perl或通過ssi調用perl)

--with-perl_modules_path= 設定perl模塊路徑

--with-perl= 設定perl庫文件路徑

--http-log-path= 設定access log路徑

--http-client-body-temp-path= 設定http客戶端請求臨時文件路徑

--http-proxy-temp-path= 設定http代理臨時文件路徑

--http-fastcgi-temp-path= 設定http fastcgi臨時文件路徑

--http-uwsgi-temp-path= 設定http uwsgi臨時文件路徑

--http-scgi-temp-path= 設定http scgi臨時文件路徑

-without-http 禁用http server功能

--without-http-cache 禁用http cache功能

--with-mail 啟用POP3/IMAP4/SMTP代理模塊支持

--with-mail_ssl_module 啟用ngx_mail_ssl_module支持

--without-mail_pop3_module 禁用pop3協(xié)議(POP3即郵局協(xié)議的第3個版本,它是規(guī)定個人計算機如何連接到互聯(lián)網(wǎng)上的郵件服務器進行收發(fā)郵件的協(xié)議谆奥。是因特網(wǎng)電子郵件的第一個離線協(xié)議標準,POP3協(xié)議允許用戶從服務器上把郵件存儲到本地主機上,同時根據(jù)客戶端的操作刪除或保存在郵件服務器上的郵件。POP3協(xié)議是TCP/IP協(xié)議族中的一員拂玻,主要用于支持使用客戶端遠程管理在服務器上的電子郵件)

--without-mail_imap_module 禁用imap協(xié)議(一種郵件獲取協(xié)議酸些。它的主要作用是郵件客戶端可以通過這種協(xié)議從郵件服務器上獲取郵件的信息,下載郵件等檐蚜。IMAP協(xié)議運行在TCP/IP協(xié)議之上魄懂,使用的端口是143。它與POP3協(xié)議的主要區(qū)別是用戶可以不用把所有的郵件全部下載闯第,可以通過客戶端直接對服務器上的郵件進行操作市栗。)

--without-mail_smtp_module 禁用smtp協(xié)議(SMTP即簡單郵件傳輸協(xié)議,它是一組用于由源地址到目的地址傳送郵件的規(guī)則,由它來控制信件的中轉方式。SMTP協(xié)議屬于TCP/IP協(xié)議族填帽,它幫助每臺計算機在發(fā)送或中轉信件時找到下一個目的地蛛淋。)

--with-google_perftools_module 啟用ngx_google_perftools_module支持(調試用,剖析程序性能瓶頸)

--with-cpp_test_module 啟用ngx_cpp_test_module支持

--add-module= 啟用外部模塊支持

--with-cc= 指向C編譯器路徑

--with-cpp= 指向C預處理路徑

--with-cc-opt= 設置C編譯器參數(shù)(PCRE庫篡腌,需要指定–with-cc-opt=”-I /usr/local/include”褐荷,如果使用select()函數(shù)則需要同時增加文件描述符數(shù)量,可以通過–with-cc- opt=”-D FD_SETSIZE=2048”指定嘹悼。)

--with-ld-opt= 設置連接文件參數(shù)叛甫。(PCRE庫,需要指定–with-ld-opt=”-L /usr/local/lib”杨伙。)

--with-cpu-opt= 指定編譯的CPU其监,可用的值為: pentium, pentiumpro, pentium3, pentium4, athlon, opteron, amd64, sparc32, sparc64, ppc64

--without-pcre 禁用pcre庫

--with-pcre 啟用pcre庫

--with-pcre= 指向pcre庫文件目錄

--with-pcre-opt= 在編譯時為pcre庫設置附加參數(shù)

--with-md5= 指向md5庫文件目錄(消息摘要算法第五版,用以提供消息的完整性保護)

--with-md5-opt= 在編譯時為md5庫設置附加參數(shù)

--with-md5-asm 使用md5匯編源

--with-sha1= 指向sha1庫目錄(數(shù)字簽名算法限匣,主要用于數(shù)字簽名)

--with-sha1-opt= 在編譯時為sha1庫設置附加參數(shù)

--with-sha1-asm 使用sha1匯編源

--with-zlib= 指向zlib庫目錄

--with-zlib-opt= 在編譯時為zlib設置附加參數(shù)

--with-zlib-asm= 為指定的CPU使用zlib匯編源進行優(yōu)化萨醒,CPU類型為pentium, pentiumpro

--with-libatomic 為原子內存的更新操作的實現(xiàn)提供一個架構

--with-libatomic= 指向libatomic_ops安裝目錄

--with-openssl= 指向openssl安裝目錄

--with-openssl-opt 在編譯時為openssl設置附加參數(shù)

--with-debug 啟用debug日志

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末涣旨,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌勤庐,老刑警劉巖妥粟,帶你破解...
    沈念sama閱讀 217,826評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件做修,死亡現(xiàn)場離奇詭異衰腌,居然都是意外死亡,警方通過查閱死者的電腦和手機勘天,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,968評論 3 395
  • 文/潘曉璐 我一進店門怔揩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人脯丝,你說我怎么就攤上這事商膊。” “怎么了宠进?”我有些...
    開封第一講書人閱讀 164,234評論 0 354
  • 文/不壞的土叔 我叫張陵晕拆,是天一觀的道長。 經(jīng)常有香客問我材蹬,道長实幕,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,562評論 1 293
  • 正文 為了忘掉前任堤器,我火速辦了婚禮昆庇,結果婚禮上,老公的妹妹穿的比我還像新娘闸溃。我一直安慰自己整吆,他們只是感情好拱撵,可當我...
    茶點故事閱讀 67,611評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著表蝙,像睡著了一般拴测。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上府蛇,一...
    開封第一講書人閱讀 51,482評論 1 302
  • 那天集索,我揣著相機與錄音,去河邊找鬼欲诺。 笑死抄谐,一個胖子當著我的面吹牛渺鹦,可吹牛的內容都是我干的扰法。 我是一名探鬼主播,決...
    沈念sama閱讀 40,271評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼毅厚,長吁一口氣:“原來是場噩夢啊……” “哼塞颁!你這毒婦竟也來了?” 一聲冷哼從身側響起吸耿,我...
    開封第一講書人閱讀 39,166評論 0 276
  • 序言:老撾萬榮一對情侶失蹤祠锣,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后咽安,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體伴网,經(jīng)...
    沈念sama閱讀 45,608評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,814評論 3 336
  • 正文 我和宋清朗相戀三年妆棒,在試婚紗的時候發(fā)現(xiàn)自己被綠了澡腾。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,926評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡糕珊,死狀恐怖动分,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情红选,我是刑警寧澤澜公,帶...
    沈念sama閱讀 35,644評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站喇肋,受9級特大地震影響坟乾,放射性物質發(fā)生泄漏。R本人自食惡果不足惜蝶防,卻給世界環(huán)境...
    茶點故事閱讀 41,249評論 3 329
  • 文/蒙蒙 一甚侣、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧慧脱,春花似錦渺绒、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,866評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽躏鱼。三九已至,卻和暖如春殷绍,著一層夾襖步出監(jiān)牢的瞬間染苛,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,991評論 1 269
  • 我被黑心中介騙來泰國打工主到, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留茶行,地道東北人。 一個月前我還...
    沈念sama閱讀 48,063評論 3 370
  • 正文 我出身青樓登钥,卻偏偏與公主長得像畔师,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子牧牢,可洞房花燭夜當晚...
    茶點故事閱讀 44,871評論 2 354