Nginx負載均衡即爲當代理服務器將自定義的域名解析到多個指定IP時,經過upstream來保證用戶能夠經過代理服務器正常訪問各個IP。nginx
dig命令
dig命令是經常使用域名解析工具。
若是服務器中沒有該命令,手動安裝:
yum install -y bind-utils
語法: dig [域名]
dig qq.comweb
負載均衡配置
配置參數:
vim /usr/local/nginx/conf/vhost/load.conf
upstream qq.com
#自定義域名
{
ip_hash;
#保證同一個用戶始終保持在同一臺機器上
#即當域名指向多個IP時,保證每一個用戶始終解析到同一IP
server 61.135.157.156:80;
server 125.39.240.113:80;
#指定web服務器的IP
}
server
{
listen 80;
server_name www.qq.com;
location /
{
proxy_pass http://qq.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}vim
Proxy_pass 內容與upstream後跟的名稱要一致。安全
檢測
代理前
curl -x127.0.0.1:80 www.qq.com 服務器
使用代理前,會直接解析到默認虛擬主機。網絡
代理後
/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx -s reload
curl -x127.0.0.1:80 www.qq.com負載均衡
使用代理後會解析到代理服務器所指向的IP
注意: Nginx不支持代理https,只能代理http,新版本的Nginx能夠代理tcp。curl
http、https、tcp
HTTP超文本傳輸協議(HyperText Transfer Protocol)是互聯網上應用最爲普遍的一種網絡協議。
HTTPS(全稱:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全爲目標的HTTP通道,簡單講是HTTP的安全版。HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的網絡協議要比http協議安全。
HTTP默認的端口號爲80,HTTPS的端口號爲443。
TCP(Transmission Control Protocol 傳輸控制協議)是一種面向鏈接的、可靠的、基於字節流的傳輸層通訊協議,由IETF的RFC 793定義。默認監聽80端口。tcp