Nginx代理简介
1. 什么是代理
- 代理也被称为正向代理,是一个位于客户端和目标服务器之间的代理服务器,客户端将发送的请求和制定的目标服务器都提交给代理服务器,然后代理服务器向目标服务器发起请求,并将获得的结果返回给客户端的过程,流程如下图:
- 相对于代理服务,反向代理的对象就是服务器,即代理服务代理的时服务器而不是客户端,它的作用现在是代替服务器接受请求,而不在像正向代理那样代理客户端。
- 正向代理代理的是客户端,找完代理之后,还需要找服务器。 典型应用 : VPN
- 反向代理代理的是服务端,只需要找代理,不需要找服务器。 典型应用 : 负载均衡
2. Nginx代理服务支持的协议
ngx_http_uwsgi_module : Python
ngx_http_fastcgi_module : PHP
ngx_http_scgi_module : Java
ngx_http_v2_module : Golang
ngx_http_proxy_module : HTTP
-
在Nginx中也有相应的文件
-
在配置文件中需要根据不同编程语言选择不同的文件
3. Nginx代理实践
3.1 部署web01
[root@web01 conf.d]# vim game.conf
server {
listen 80;
server_name 192.168.15.7;
location / {
root /opt/Super_Marie;
index index.html;
}
location ~ /images {
root /opt/image;
}
}
3.2 部署lb01
3.2.1 部署Nginx
-
部署反向代理
[root@lb01 conf.d]# vim /etc/nginx/conf.d/game.conf
server {
listen 80;
server_name _;
location / {
proxy_pass http://172.16.1.7:80;
}
}
- 至此lb01就通过nginx 代理了 web01 中的 超级玛丽小游戏