代理服务器
所谓代理可以理解为代替你做某件事。代理服务器就是客户端和原始服务器之间的一个中转站。
正向代理
VPN服务器将我们的IP变成对外美国的IP地址,使我们可以访问外网,这就是正向代理。
正向代理服务器位于客户端和原始服务器之间,客户端设置代理服务器,向代理服务器发送请求,并设置目标服务器(即原始服务器),代理服务器将原始服务器返回的数据交给客户端。
总结:
- 客户端需要设置代理服务器
- 代理服务器和客户端合二为一,对原始服务器暴露代理服务器。
反向代理
反向代理过程中客户端是无感的,客户端访问代理服务器,代理服务器将请求转发到原始服务器,并将原始服务器的返回数据返回给客户端。
总结:
- 客户端不需要配置任何东西
- 代理服务器和原始服务器合二为一,对客户端暴露代理服务器。
整体而言就是,正向代理代理的是客户端,反向代理代理的是原始服务器
准备工作
准备两个虚拟机模拟两个服务器:
- ubuntuMaster :xxx.xxx.xxx.129(用129代替);
- UbuntuSlave1:xxx.xxx.xxx.130(用130代替);
130 进行如下配置,方便测试:
server {
listen 80;
server_name xxx.xxx.xxx.130;
location /hehe/nene {
alias /etc/nginx/html/asd;
index c.html;
}
location /haha {
alias /etc/nginx/html/qwe;
index b.html;
}
location /xixi {
alias /etc/nginx/html;
index a.html;
}
location / {
root /etc/nginx/html;
index d.html;
}
}
相关静态资源均在对应目录下准备完成。
路由映射规则
具体映射规则为:proxy_pass不加"/"就代理location;proxy加"/"就不代理location。
1、直接访问129
2、129配置如下:
server {
listen 80;
server_name xxx.xxx.xxx.129;
location /xixi {
proxy_pass http://xxx.xxx.xxx.130;
}
}
| 访问路由 | 映射结果 |
|---|---|
| 129/xixi | 130/xixi |
3、129配置如下:
server {
listen 80;
server_name xxx.xxx.xxx.129;
location /xixi {
proxy_pass http://xxx.xxx.xxx.130/;
}
}
| 访问路由 | 映射路由 |
|---|---|
| 129/xixi | 130/ |
| 129/xixi/haha | 130/haha |
| 129/xixihaha | 130/haha |
| 129/xixihehe/nene | 130/hehe/nene |
4、129配置如下
server {
listen 80;
server_name xxx.xxx.xxx.129;
location /xixi/ {
proxy_pass http://xxx.xxx.xxx.130/;
}
}
| 访问路由 | 映射路由 |
|---|---|
| 129/xixihehe/nene | 404 |
| 129/xixi/haha | 130/haha |
5、129配置如下:
server {
listen 80;
server_name xxx.xxx.xxx.129;
location /xixi/hehe/nene/ {
proxy_pass http://xxx.xxx.xxx.130/hehe/nene/;
}
}
| 访问路由 | 映射路由 |
|---|---|
| 129/xixi/hehe/nene | 130/hehe/nene |
6、129配置如下:
server {
listen 80;
server_name xxx.xxx.xxx.129;
location /xixi/hehe/nene {
proxy_pass http://xxx.xxx.xxx.130/hehe/nene/;
}
}
| 访问路由 | 映射路由 |
|---|---|
| 129/xixi/hehe/nene | 130/hehe/nene |
7、129配置如下:
server {
listen 80;
server_name xxx.xxx.xxx.129;
location /hehe/nene/ {
proxy_pass http://xxx.xxx.xxx.130;
}
}
| 访问路由 | 映射路由 |
|---|---|
| 129/hehe/nene | 130/hehe/nene |