Nginx用作反向代理服务器
.png)
- 当客户端请求来时,Nginx并不会立刻转发到上游服务器,而是想完整的接收到Nginx所在的服务器,
- 然后再把缓存的客户端的请求转发到上游服务器。
- 优缺点
- 缺点:请求处理延迟
- 优点:降低上游服务器的负载
- 由于网络,以及TCP分包的原因;一个大的数据包,很可能需要多个TCP连接来接受,这样如果一接受到就转发,那么传完一个请求就需要多个TCP连接,对并发性提出考验。
- Nginx先把整个请求都放到自己的内存或硬盘中,等待这个请求的所有包都过来了,然后一次性 传到上游服务器,这样降低了对上游服务器的并发要求,而且由Nginx于上游服务器时内网,传输速度更快。
location /bbs {
proxy_pass http://www.magedu.com:8080/;
}
访问 www.localhost.com/bbs -->
代理到 www.mageedu.com:/
location ^~ /bbs {
proxy_pass http://www.magedu.com;
}
访问: www.localhost.com/bbs
代理到 www.mageedu.com/bbs
"proxy_pass" cannot have URI part in location given by regular expression, or inside named location, or inside "if" statement, or inside "limit_except"
location / {
rewrite /(.*)$ /index.php?page=$ break;
proxy_pass www.mageedu.com:/index;
}
访问: www.localhost.com/index.php
代理到 www.mageedu.com:/index.php?page=$
- proxy_connect_timeout
- nginx将一个请求发送至upstream server之前等待的最大时长;
- proxy_cookie_domain:
- 将upstream server通过Set-Cookie首部设定的domain属性修改为指定的值,
- 其值可以为一个字符串、正则表达式的模式或一个引用的变量;
- proxy_cookie_path:
- 将upstream server通过Set-Cookie首部设定的path属性修改为指定的值,
- 其值可以为一个字符串、正则表达式的模式或一个引用的变量;
- proxy_hide_header:
- 设定发送给客户端的报文中需要隐藏的首部;
- proxy_pass:
- 指定将请求代理至upstream server的URL路径;
- proxy_set_header:
- 将发送至upsream server的报文的某首部进行重写;
- proxy_redirect:
- 重写location并刷新从upstream server收到的报文的首部;
- proxy_send_timeout:
- 在连接断开之前两次发送至upstream server的写操作的最大间隔时长;
- proxy_read_timeout:
- 在连接断开之前两次从接收upstream server接收读操作的最大间隔时长;
- proxy_buffer_size size
- 设定用于暂存来自于upsteam服务器的第一个响应报文的缓冲区大小;
- proxy_buffering on|off:
- 启用缓冲upstream服务器的响应报文,
- 否则,如果proxy_max_temp_file_size指令的值为0,来自upstream服务器的响应报文在接收到的那一刻将同步发送至客户端;
- 一般情况下,启用proxy_buffering并将proxy_max_temp_file_size设定为0能够启用缓存响应报文的功能,并能够避免将其缓存至磁盘中;
- proxy_buffers 8 4k|8k
- 用于缓冲来自upstream服务器的响应报文的缓冲区大小;
Nginx用作反向代理服务器的更多相关文章
- 【大型网站技术实践】初级篇:借助Nginx搭建反向代理服务器
一.反向代理:Web服务器的“经纪人” 1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从 ...
- Nginx搭建反向代理服务器过程详解
一.反向代理:Web服务器的“经纪人” 1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从 ...
- 【翻译】使用nginx作为反向代理服务器,uWSGI作为应用服务器来部署flask应用
最近在看关于Docker和Nginx方面的内容,先于在Docker上开发以及部署python应用自然要先能够在本机上部署,其中找到一篇文章写的最为详细并且实验成功,所以在此翻译转载过来以备后需.[原文 ...
- Nginx搭建反向代理服务器
[大型网站技术实践]初级篇:借助Nginx搭建反向代理服务器 一.反向代理:Web服务器的“经纪人” 1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受int ...
- Nginx 搭建反向代理服务器过程详解
1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet ...
- 配置Nginx作为反向代理服务器
最近在实习公司的开发一个项目,项目是前后端彻底分离的项目,前端项目和后端项目各监听着特定的端口号,显然不是80的通用端口,为了不在地址栏上输入IP+端口号的形式,我们可以使用Nginx作为反向代理服务 ...
- 【转】Nginx搭建反向代理服务器过程详解
阅读目录 1.1 反向代理初印象 1.2 反向代理的作用 2.1 Nginx是神马? 2.2 Nginx的应用现状 2.3 Nginx的核心特点 3.1 准备一个ASP.NET网站部署到IIS服务器集 ...
- 借助Nginx搭建反向代理服务器
一.反向代理:Web服务器的"经纪人" 1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网 ...
- Windows下使用nginx搭建反向代理服务器
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时 ...
随机推荐
- RPC-Thrift(三)
TProtocol TProtocol定义了消息怎么进行序列化和反序列化的. TProtocol的类结构图如下: TBinaryProtocol:二进制编码格式: TCompactProtocol:高 ...
- hdu3294 manacher算法
这道题哇 其实是裸的manacher 无论怎么变 是回文的就是回文 所以 特殊处理一下输出就好了 不过最后的左右端点l,r.l=(p-p[pos]+2)/2-1,r=(p+p[pos]-2)/2-1; ...
- [BZOJ1031][JSOI2007]字符加密Cipher 解题报告
Description 喜欢钻研问题的JS 同学,最近又迷上了对加密方法的思考.一天,他突然想出了一种他认为是终极的加密办法:把需要加密的信息排成一圈,显然,它们有很多种不同的读法.例如下图,可以读作 ...
- mongoDB的文档查询
1.简单查询: find() 方法以非结构化的方式来显示所有文档. 语法 MongoDB 查询数据的语法格式如下: collection是集合名字,注意应该是当前数据库的集合,collect ...
- Python学习笔记 使用数据库SQlite Mysql
SQLite是一种嵌入式数据库,它的数据库就是一个文件.由于SQLite本身是C写的,而且体积很小,所以,经常被集成到各种应用当中, 甚至在IOS和Android的APP中都可以集成 Python就内 ...
- 【LVS 】NAT方式实现过程
LVS-NAT方式实现负载均衡 一.环境介绍
- DRF的认证与权限功能
认证 1.全局配置 在setting.py进行配置. REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES': ( # 'rest_framework. ...
- solr in action 第三章
document: 每个document由一个或者多个域(field)组成,每个域都有自己的类型:string, text, etc. 理论上域的类型有无限多个,因为一个域的类型可以由零个或多个分析阶 ...
- 【LeedCode】3Sum
Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all un ...
- 一个杀不死的小强,kill进程无效的原因 记录故障排查过程中kill进程无效的分析过程
今天在处理一个机器异常负载(1000+)的问题,碰到了一个从未碰到过的情况,遇到了一个异常顽固的分子.我使用了所能想到的所有杀进程的方法,却始终无法干掉这个顽固分子,最后终于在谷歌大神的指引下,干掉了 ...