1、什麼是方向代理安全
客戶端是無感知代理的存在的,反向代理對外都是透明的,訪問者並不知道本身訪問的是一個代理。由於客戶端不須要任何配置就能夠訪問。服務器
反向代理,"它代理的是服務端,代服務端接收請求",主要用於服務器集羣分佈式部署的狀況下,反向代理隱藏了服務器的信息。負載均衡
反向代理的做用:
(1)保證內網的安全,一般將反向代理做爲公網訪問地址,Web服務器是內網
(2)負載均衡,經過反向代理服務器來優化網站的負載分佈式
2、反向代理配置優化
server { listen 80; server_name aotu.jd.com; root /var/www/; location /o2blog_wx/ { # 反向代理咱們經過proxy_pass字段來設置 # 也就是當訪問http://aotu.jd.com/o2blog_wx的時候通過Nginx反向代理到服務器上的http://127.0.0.1:3000 # 同時因爲解析到服務器上的時候o2blog_wx這個字段都要處理 # 因此經過rewrite字段來進行正則匹配替換 # 也就是http://aotu.jd.com/o2blog_wx/hello通過Nginx解析到服務器變成http://127.0.0.1:3000/hello proxy_pass http://127.0.0.1:3000; rewrite ^/o2blog_wx/(.*) /$1 break; } }
3、負載均衡
http { upstream backend { server 127.0.0.1:3000; server 127.0.0.1:3001; } ... server { listen 9000; server_name localhost; location / { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Scheme $scheme; proxy_pass backend; } } }