1.1 Nginx簡介
Nginx是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,並在一個BSD-like 協議下發行。由俄羅斯的程序設計師Igor Sysoev所開發,供俄國大型的入口網站及搜索引擎Rambler(俄文:Рамблер)使用。其特色是佔有內存少,併發能力強,事實上nginx的併發能力確實在同類型的網頁服務器中表現較好,中國大陸使用nginx網站用戶有:百度、新浪、網易、騰訊等。nginx
負載均衡是nginx最流行最出名的功能,作爲一款分發軟件,nginx接收來自客戶端的大量訪問進行平均分發到後端的多個服務器進行處理。單個nginx服務可支持過萬的併發量,很好得解決了大量web類訪問。同時,經過nginx服務器可作到內網與外網的物理隔離。web
標準組網以下:vim
1.2.1 安裝
[root@PXE nginx-1.7.0]# ./configure [root@PXE nginx-1.7.0]# make
[root@PXE nginx-1.7.0]# make install
1.2.2 配置
默認安裝的配置文件爲:
/usr/local/nginx/conf下的nginx.conf文件 編輯配置文件:
[root@PXE ~]# cd /usr/local/nginx/conf/ [root@PXE conf]# vim nginx.conf
nginx.conf 後端
worker_processes 1; #規定worker進程數量,與CPU核數相同
events {
worker_connections 1024; #規定worker進程最大鏈接數 }
http {
include mime.types;
default_type application/octet-stream; sendfile on;
upstream www.hysec.com { #負載均衡包括的服務器 server 192.168.170.101:28080; server 192.168.170.102:28080; }
server {
listen 80; #監聽本機的80端口 server_name localhost; #規定訪問類型 location /{
proxy_pass http://www.hysec.com; #監聽到訪問80端口的訪問就轉給負載均衡 } } } 服務器
1.3 反向代理
實際上負載均衡功能便是反向代理的應用,只不過負載均衡是代理多臺服務器,更注重其均衡轉發功能。此處要特別說的是,一般狀況下單一的反向代理功能主要應用於內網服務器經過nginx反向代理服務器(支持公網)去訪問某一特定的站點。例如內網服務器經過nginx外網轉發去訪問支付寶服務端以達到內網業務的第三方支付功能。 併發
1.4 正向代理
正向代理主要應用於內網環境中只有某臺特定服務器支持鏈接互聯網,而其它同一局域網的服務器IP都不支持直接鏈接互聯網,此時能夠在支持鏈接公網的服務器配置nginx的正向代理,局域網內其它機器可經過此臺服務器鏈接公網。
如圖,服務器①的IP沒有訪問公網的權限,nginx服務器同時鏈接了內網和公網,則服務器①可經過nginx服務器訪問公網。app