web服务器-nginx反向代理
web服务器-nginx反向代理
一. 代理介绍
- 代理是网络中使用比较常见的, 比如我们说的最多的就是FQ软件, 比如ss, 蓝灯等这些大家常用的软件,他们就是能改代理大家访问的国内无法访问的一些国外网站,比如fecebook,youtube等网站,其原理也比较简单
- 用户将请求发给代理服务器
- 代理服务器代用户去访问数据
- 代理服务器将数据给用户
- 正常没有代理情况上网

代理服务器场景

代理服务器扮演的就是一个中间人的角色。
- 代理服务器分为正向代理和反向代理俩种类型:
- 正向代理:代理用户访问其他网站,比如ss,蓝灯
- 反向代理:用来发布服务器,比如nginx
二应用场景
堡垒机:堡垒机承担所有的外部访问,保护后端服务器的安全

业务发布服务器:将多个服务器通过虚拟主机的方式发布到公网

缓存服务器:CDN加速

三. 反向代理的原理
- 客户端通过浏览器,发起请求,代理服务器
- 代理服务器,接受请求
- 代理服务器给业务服务器发起请求
- 业务服务器接受请求
- 业务服务器处理请求
- 业务服务器响应请求 给代理服务器
- 代理服务器 给客户端 响应请求
- 客户端通过浏览器渲染请求并展示给用户
代理服务器和业务服务器之间需要进行配置
反向代理的作用:
- 保证内网的安全,可以使用反向代理提供WAF功能,阻止web攻击。大型网站,通常将反向代理作为公网访问地址,Web服务器是内网。
- 负载均衡,通过反向代理服务器来优化网站的负载

四. 正向代理的原理
正向代理类似一个跳板机,代理访问外部资源,用户都是通过代理服务器来达到访问.
用户需要配置代理服务器的地址,


五 反向代理的实现
nginx反向代理指令: proxy_pass
反向代理的实现:
location / {
index index.php index.html index.htm; #定义首页索引文件的名称 proxy_pass http://mysvr ;#请求转向mysvr 定义的服务器列表
}
location ~ .*\.(png|jpg|gif)$ {
gzip on;
root /soft/code/images;
}
反向代理的优化.直接放在
location / {
index index.php index.html index.htm; #定义首页索引文件的名称 proxy_pass http://mysvr ;#请求转向mysvr 定义的服务器列表 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 10m; #允许客户端请求的最大单文件字节数 client_body_buffer_size 128k; #缓冲区代理缓冲用户端请求的最大字节数, proxy_connect_timeout 90; #nginx跟后端服务器连接超时时间(代理连接超时) proxy_send_timeout 90; #后端服务器数据回传时间(代理发送超时) proxy_read_timeout 90; #连接成功后,后端服务器响应时间(代理接收超时) proxy_buffer_size 4k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小 proxy_buffers 4 32k; #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置 proxy_busy_buffers_size 64k; #高负荷下缓冲大小(proxy_buffers*2) proxy_temp_file_write_size 64k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传 }
注意: 最好是将注释删掉
web服务器-nginx反向代理的更多相关文章
- 【Web】Nginx 反向代理与负载均衡
反向代理 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客 ...
- Linux基础-----------nginx安装和nginx web、nginx反向代理、nfs 服务
作业一:nginx服务1)二进制安装nginx包 yum install epel-release -y 先安装epel-release 再查看yum源中已经安装上了epel相关文件 中间省去了一些安 ...
- Web服务器的反向代理nginx
nginx作为web服务器一个重要的功能就是反向代理. Nginx配置详解 序言 Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的.从2004年发布至今,凭 ...
- 服务器Nginx 反向代理 其他服务器 8181端口 失败的问题
排查方向: 1. 检查服务器的防火墙 2. 检查安全策略 3. 关掉Nginx 服务器上的安全软件 如360 软件会照成这个问题 来自为知笔记(Wiz)
- nginx反向代理+负载均衡+url重写+ssl认证
Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄 ...
- nginx反向代理配置
最近在项目中使用nginx反向代理,根据不同的请求路径,将请求分发到不同服务.下面的示例主要完成如下功能 /prod/路径的请求分发到prod服务 /test/路径的请求分发到test服务 创建文件夹 ...
- nginx高性能WEB服务器系列之七--nginx反向代理
nginx系列友情链接:nginx高性能WEB服务器系列之一简介及安装https://www.cnblogs.com/maxtgood/p/9597596.htmlnginx高性能WEB服务器系列之二 ...
- Nginx 之六: Nginx服务器的反向代理功能
一:Nginx作为正向代理服务器: 1.正向代理:代理(proxy)服务也可以称为是正向代理,指的是将服务器部署在公司的网关,代理公司内部员工上外网的请求,可以起到一定的安全作用和管理限制作用,正向代 ...
- nginx反向代理配置两个不同服务器
1.什么是反向代理通常的代理服务器,只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的http请求发送到代理服务器中由代理服务器向Inter ...
随机推荐
- rust连接oracle数据库遇到DPI-1047: Cannot locate a 64-bit Oracle Client library的解决方案
这两天要实现一个用rust连接远程的oracle数据库的需求,所以就需要用rust连接oracle. 在github上面找到一个库,地址:https://github.com/kubo/rust-or ...
- MySQL中的严格模式
很多集成的PHP环境(PHPnow WAMP Appserv等)自带的MySQL貌似都没有开启MySQL的严格模式,何为MySQL的严格模式,简单来说就是MySQL自身对数据进行严格的校验(格式.长度 ...
- 一个接口多个实现Spring如何实现正确注入
阅读源码的时候,时不时脑子中冒出一个问题:如果自己写一个单例的容器,一个接口多个实现怎么正确地将每个实现都缓存容器中并准确地注入呢?阅读Dubbo源码时也有类似的问题冒出来. 对于@Autowire注 ...
- 黑客高端de浏览器使用秘籍
搜索引擎已经成为上网必不可少的工具之一,聪明的黑客们发现,搜索引擎也能成为发动网络攻击的工具. Google Hacking,原指利用Google搜索引擎搜索信息来进行入侵的技术和行为,如今已不再局限 ...
- DotNet Dictionary 实现简介
一:前言 本来笔者对DotNet的Hashtable及Dictionary认识一直集中在使用上,一个直接用object 一个可以用泛型,以前也只大概看过Hashtable的实现.最近查MSDN时发现有 ...
- Java诊断神器:Arthas常用功能
最新原文:https://www.cnblogs.com/uncleyong/p/14944401.html Arthas是Alibaba开源的Java诊断工具,功能很强大,它是通过Agent方式来连 ...
- centos安装k8s集群
准备工作 关闭swap,注释swap分区 swapoff -a 配置内核参数,将桥接的IPv4流量传递到iptables的链 cat > /etc/sysctl.d/k8s.conf < ...
- springboot页面国际化
引入依赖pom.xml <dependency> <groupId>org.springframework.boot</groupId> <artifactI ...
- 【windows 操作系统】进程控制块(PCB)
转载地址:https://blog.csdn.net/qq_38499859/article/details/80057427一.目录文章目录 操作系统3 ----进程控制块(PCB)详解 ...
- MySQL 8.0.25 MSI Install 安装过程
官网下载地址: https://dev.mysql.com/downloads/mysql 其中web-community需要联网安装,另外一个可以离线安装.我下载的是离线安装包. 1.双击安 ...