Nginx 搭建反向代理服务器
2017年10月25日 11:36:39 Matrix-yang 阅读数:2654
版权声明:本文为博主原创文章,转载请注明出处。 https://blog.youkuaiyun.com/qq_21768483/article/details/78339450
一、正向代理与反向代理
关于正向代理与反向代理一个最直接的解释就是:
正向代理隐藏真实客户端,反向代理隐藏真实服务端。
1. 正向代理
我们常说的代理也就是只正向代理,正向代理的过程,它隐藏了真实的请求客户端,服务端不知道真实的客户端是谁,客户端请求的服务都被代理服务器代替来请求,某些科学上网工具扮演的就是典型的正向代理角色。用浏览器访问 google 时,被残忍的block,于是你可以在国外搭建一台代理服务器,让代理帮我去请求google.com,代理把请求返回的相应结构再返回给我。 
2.反向代理
反向代理隐藏了真实的服务端,当我们请求 ww.baidu.com 的时候,背后可能有成千上万台服务器为我们服务,但具体是哪一台,你不知道,也不需要知道,你只需要知道反向代理服务器是谁就好了,ww.baidu.com 就是我们的反向代理服务器,反向代理服务器会帮我们把请求转发到真实的服务器那里去。Nginx就是性能非常好的反向代理服务器,用来做负载均衡。 
两者的比较
正向代理隐藏真实客户端,反向代理隐藏真实服务端。

二、nginx 的配置
常用三个命令
start nginx
nginx -s reload #修改配置后载入新的配置
nginx -s stop
1.单域名映射到多服务
配置nginx-1.12.2\conf\nginx.conf
server {
listen 80;
server_name www.demo.com;
location /sewage/ {
proxy_pass http://192.168.0.66:32322/;
}
location /sewageserver/ {
proxy_pass http://192.168.0.66:32321/;
}
location /abc/ {
proxy_pass http://192.168.0.66:9004/;
}
location / {
proxy_pass http://192.168.0.66:9000/;
}
}
如此
访问www.demo.com 将被映射到http://192.168.0.66:9000/。
访问www.demo.com/sewage/将被映射到http://192.168.0.66:32322/
2.多域名映射到多服务
server {
listen 80;
server_name pro.letv.com;
location / {
proxy_pass http://192.168.0.66:9000/;
}
}
server {
listen 80;
server_name vid.atm.youku.com;
location / {
proxy_pass http://192.168.0.66:9999/;
}
}
本文详细介绍了正向代理与反向代理的区别,重点讲解了如何使用Nginx搭建高性能反向代理服务器,实现单域名及多域名下多个服务的映射。通过配置实例,展示了如何将不同路径的请求转发至不同的后端服务器,适用于负载均衡场景。
9777

被折叠的 条评论
为什么被折叠?



