Nginx反向代理
AI-摘要
Tianli GPT
AI初始化中...
介绍自己
生成本文简介
推荐相关文章
前往主页
前往tianli博客
1、正向代理
正向代理类似一个中转站,代理内部访问外部资源。
举个例子:
我是一个用户,我访问不了某网站,但是我能访问一个代理服务器,这个代理服务器呢,它能访问那个我不能访问的网站,于是我先连上代理服务器,告诉他我需要那个无法访问网站的内容,代理服务器去取回来,然后返回给我。从那个网站的角度来看,只在代理服务器来取内容的时候有一次记录,有时候并不知道是用户的请求,也隐藏了用户的资料,这取决于代理告不告诉网站。
注意:客户端必须设置正向代理服务器,当然前提是要知道正向代理服务器的IP地址,还有代理程序的端口。
总结来说:正向代理 是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。
正向代理的用途:
1. 访问原来无法访问的资源,如google
2. 可以做缓存,加速访问资源
3. 对客户端访问授权,上网进行认证
4. 代理可以记录用户访问记录(上网行为管理),对外隐藏用户信息
2、反向代理
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。反向代理的作用
- 保证内网的安全,可以使用反向代理提供防火墙(WAF)功能,阻止web攻击。大型网站,通常将反向代理作为公网访问地址,Web服务器是内网。
- 负载均衡,通过反向代理服务器来优化网站的负载。当大量客户端请求代理服务器时,反向代理可以集中分发不同用户请求给不同的weab服务器进行处理请求。(本阶段不实现,负载均衡技术项目阶段讲解)
3、反向代理配置
- 修改配置文件,一般在nginx的conf目录下(不同情况安装的nginx,上级目录不同)
vim /xxx/conf/nginx.conf
4、修改配置信息
http{
#给这次代理的操作起一个名字
#{}里面书写,被代理服务器的 ip+端口号
upstream books{
#server 被代理的服务器地址:被代理服务器的端口号;
server 127.0.0.1:8080;
# 当前的代理代理的是 当前同一台机器上的 端口号为8080的tomcat服务器
}
server {
#监听端口号 当前指的是 外界访问的80端口号 就被监听到了
listen 80;
#监听的主机
server_name localhost;
# 当前主机的上的 80端口号被访问了 我就触发了代理
location / {
root html;
#proxy_pass 代理的地址 http://代理的地址 因为前面设置 upstream 只需要写 名字 books
proxy_pass http://books;
#如果上面没有设置upstream 属性,这里可以直接配置要代理的地址全称
#proxy_pass http://127.0.0.1:8080
index index.html index.htm;
}
}
}
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 leaflei
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果