个人笔记,如有描述不当,欢迎留言指出~
前言
科学上网过的小伙伴们都知道,目前这些上网工具SS、SSR、V2Ray等等,说白了就是通过代理让我们得以愉快地遨游在知识的海洋里。
正向代理
概念
正向代理是什么?由于某些网站访问奇慢,或者墙的问题根本无法访问时,通过给浏览器配置代理ip和端口,让代理服务器转发我们请求,而后将响应结果传回浏览器,这就是正向代理。举个通俗的栗子,就好比你自己没找到合适的房子,于是你通过房租中介来租到好房子。大致流程如下:
nginx正向代理主要配置
服务端
在虚拟机上部署了一台nginx服务器(有独立局域网ip)1
2
3
4
5
6
7
8server {
resolver 114.114.114.114 8.8.8.8; #指定DNS服务器IP地址
listen 8888; #监听端口
location / {
proxy_pass $scheme://$host$request_uri; #设定代理服务器的协议和地址
proxy_set_header Host $http_host;
}
}
然后重启nginx生效
客户端
打开Chrome浏览器->设置->高级->系统->打开代理设置,如图所示:
其中,192.168.1.44就是你新建虚拟机的独立局域网IP。
反向代理
概念
你可以这么理解,正向代理服务器只是转发代理请求,并不提供自己的服务;而反向代理可以提供自己的服务。比如说,有个请求想要访问你公司内网服务器,而实际公司只有一个公共IP,内网IP并没有映射,所以这时候你就可以使用nginx反向代理来实现内网资源的请求。另外,如果访问量过大,还可以使用nginx来进行负载均衡。大致流程如下:
nginx反向代理主要配置
1 | upstream clusterserver { |
这样当代理服务器监听到9999端口的请求时,根据proxy_pass配置找到名为clusterserver的upstream 节点来进行负载均衡。