# 5 Nginx 搭建反向代理
`反向代理`(reverse proxy)方式是指用代理服務器來接受Internet上的連接請求,然后 將請求轉發給內部網絡中的上游服務器,并將從上游服務器上得到的結果返回給Internet請 求連接的客戶端,此時代理服務器對外的表現就是一個web服務器。
一般情況下,nginx在前端抗負載和處理靜態頁面請求,上游服務器可以掛接Apche/ Tomcat等處理復雜業務的動態Web服務器。
服務器A:IP 172.16.0.35 作為一臺代理服務器,大致配置如下。
```php
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
#配置均衡服務器
upstream backup.com {
server 172.16.0.138:80;#服務器B
server 172.16.0.70:80; #服務器C
}
server {
listen 80;
server_name localhost;
location / {
#配置反向代理功能
proxy_pass http://backup.com;
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
```
服務器B:IP 172.16.0.138
服務器C:IP 172.16.0.70
均作為普通的web服務器。
在瀏覽器輸入 服務器A的ip地址,也就是反向代理的地址。
172.16.0.35
會發現,通過訪問服務器A,最終處理客戶端請求的確實服務器B和服務器C。
這種就是利用Nginx實現了反向代理。