反向代理介绍
反向代理是将客户端请求转发到外部服务的一种方式。它是应用程序和外部服务器之间的桥梁,nginx反向代理便是这样一种代理服务器。
1) 有时候我们的ssl证书紧张,我们可以使用反向代理服务器实现多个服务共享一个https服务。如下图
其中路径https://www.yxjc123.com/path/A 访问服务器A;
其中路径https://www.yxjc123.com/path/B 访问服务器B;
其中路径https://www.yxjc123.com/path/C 访问服务器C。
2) 您也可以解决内网服务访问外网的需求。
如内网客户端服务器A不能访问外网,但是它可以使用内网服务器B访问外网,其中服务器B装有nginx反向代理。
反向代理的作用
1. 负载均衡:nginx负载均衡可以将请求均衡的发送到个服务器。
2. 网络加速:nginx反向代理可以压缩出站和入站的数据,缓存网络请求,提高网络的请求速度。
3. 安全匿名:反向代理可以隐藏真实的服务器ip。
nginx反向代理配置
location /yxjc/baidu/ {
proxy_pass http://www.baidu.com/;
}
其中proxy_pass就是反向代理配置的指令,我们在nginx负载均衡配置中也是用的该指令来实现的。
相关的非http代理**_pass指令有如下这些:
- fastcgi_pass:它将请求传递给 fastCGI 服务器。
- uwsgi_pass:它将请求传递给 uwsgi 服务器。
- scgi_pass:它将请求传递给 SCGI 服务器。
- memcached_pass:它将请求传递给 memcached 服务器。