反向代理
反向代理指的是以代理服务器接收用户的的访问请求,代理用户向内部服务器重新发起请求,最后把内部服务器的响应信息返回给用户。这样,代理服务器对外就表现为一台服务器,而访问内部服务器的客户端用的就是代理服务器,而不是真实网站访问用户。
为什么使用反向代理
- 可以起到保护网站安全的作用,因为任何来自Internet的请求都必须先经过代理服务器。
- 通过缓存静态资源,加速Web请求。
- 实现负载均衡
反向代理例子
环境说明
假如有AB两个服务器。A服务器提供web资源,并且只给内网访问。B服务器有两块网卡,一块与A服务器在一个内网,以块是外网。此时,用户C想直接访问A服务器是行不通的。这时就可以通过B服务器代理用户C的请求去访问A服务器了。
hostname | 网卡 | IP | 说明 |
---|---|---|---|
moli-04 | ens33 | 192.168.30.6 | 内网IP,代理服务器 |
moli-04 | ens37 | 192.168.93.129 | 外网IP,代理服务器 |
moli-05 | ens33 | 192.168.30.7 | 内网服务器 |
- 两台机器都安装nginx
- moli-05服务器访问是wordpress博客,域名blog.syushin.org
- 虚拟机实验环境,就都关闭防火墙了
配置虚拟主机
moli-04机器上编辑虚拟主机配置文件,内容如下:
[root@moli-04 extra]$ cat blog.syushin.org.conf server{ listen 80; server_name blog.syushin.org; location / { proxy_pass http://192.168.30.7; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
评论列表()