ylbtech-服务器-Web服务器-Tengine:Tengine 百科

Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。它的目的是打造一个高效、安全的Web平台

1.返回顶部
1、
外文名:Tengine
发起单位:淘宝网
基    础:Nginx
目    的:打造一个高效、安全的Web平台

目录

2、
2.返回顶部
1、

发展

Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验
它的最终目标是打造一个高效、稳定、安全、易用的Web平台
从2011年12月开始,Tengine成为一个开源项目。
现在,它由Tengine团队开发和维护。Tengine团队的核心成员来自于淘宝、搜狗等互联网企业。
 

功能

以下沿引项目主页上的特性介绍:
  • 继承Nginx-1.6.2的所有特性,兼容Nginx的配置;
  • 动态模块加载(DSO)支持。加入一个模块不再需要重新编译整个Tengine;
  • 支持SO_REUSEPORT选项,建连性能提升为官方nginx的三倍;
  • 支持SPDY v3协议,自动检测同一端口的SPDY请求和HTTP请求;
  • 流式上传到HTTP后端服务器或FastCGI服务器,大量减少机器的I/O压力;
  • 更加强大的负载均衡能力,包括一致性hash模块、会话保持模块,还可以对后端的服务器进行主动健康检查,根据服务器状态自动上线下线,以及动态解析upstream中出现的域名;
  • 输入过滤器机制支持。通过使用这种机制Web应用防火墙的编写更为方便;
  • 支持设置proxy、memcached、fastcgi、scgi、uwsgi在后端失败时的重试次数
  • 动态脚本语言Lua支持。扩展功能非常高效简单;
  • 支持管道(pipe)和syslog(本地和远端)形式的日志以及日志抽样;
  • 支持按指定关键字(域名,url等)收集Tengine运行状态;
  • 组合多个CSS、JavaScript文件的访问请求变成一个请求;
  • 自动去除空白字符和注释从而减小页面的体积
  • 自动根据CPU数目设置进程个数和绑定CPU亲缘性;
  • 监控系统的负载和资源占用从而对系统进行保护;
  • 显示对运维人员更友好的出错信息,便于定位出错机器;
  • 更强大的防攻击(访问速度限制)模块;
  • 更方便的命令行参数,如列出编译的模块列表、支持的指令等;
  • 可以根据访问文件类型设置过期时间;
  • ……
 

编译

tengine的编译参数与nginx基本一致,针对tengine的新增特性,可以在编译的时候增加一些参数,比如增加“ --with-http_concat_module”这一参数,就可以使将tengine的组合多个访问请求变为一个的功能打开。以下是一段tengine的编译参数实例:
./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --with-http_concat_module --with-http_realip_module --with-http_addition_module --with-http_gzip_static_module --with-http_random_index_module --with-http_stub_status_module --with-http_sub_module --with-http_dav_module --with-pcre=/usr/local/src/pcre-8.20
 

特性详解

CDN Combo
这一功能可以组合Javascript 以及 Css文件
使用方法:
a)以两个问号(??)激活combo
b)多文件之间用半角逗号(,)分开
c)用一个?来辨识时间戳
作用:
遵循Yahoo!前端优化准则第一条:减少HTTP请求发送次数
强制gzip压缩
默认开启的功能
作用:
Tengine会在用户浏览器没有在请求中带Accept-Encoding时通过下列方式判断是否gzip,保证只要支持gzip的浏览器中都会被覆盖到.
a)如果浏览器没有带有Accept-Encoding且cookie中没有gzip支持标识
b)通过User-Agent判断是否支持
c)发送一段js脚本,脚本中请求一个永远都gzip的url
d)如果该段内容被执行,则写入一个cookie值标识此浏览器支持gzip
过载保护
在http{}段添加
sysguard on; sysguard_load load=4 action=/high_load.html; #系统负载,超过设置值了就跳转到action设置的页面
sysguard_mem swapratio=10% action=/mem_high.html #内存负载,超过设置值了就跳转到action设置的页面
作用:
可以在系统超负载时友好提示用户,增强用户体验。
提示:
大家可以通过 top命令来查看当前系统负载,最好是借助第三方工具进行服务器负载监控,进行数天或1个月的监控,分析出准确适合的运营数据后再设置过载保护功能。
修改nginx默认使用的消息模型
添加方法:
在events {}段添加
use epoll;
作用:
使用linux内核最新支持的epoll句柄处理模型,对于大流量的网站这个配置开启提升会非常大。
(注:确定系统内核版本>=2.5.44 最好是2.6+, 查看方式uname -a)
隐藏webServerName
添加方法:
在http{} 段内添加
server_tag off;
server_tag IIS/6.0;
作用:
隐藏真实web服务器名称,防止hacker有针对性的突破
nginx进程设置简化
添加方法:
修改配置文件中的worker_process为以下
worker_processes auto;worker_cpu_affinity auto;
作用:
在不同硬件环境下对于nginx本身的生产进程优化会由webserver自动调整,而无需专业知识进行调优。
扩展4xx,5xx错误提示
添加方法:
在http{} 段内添加
server_info on;server_admin xxx@xxx.xxx;
作用:
展示管理员联系方式以便用户反馈错误
扩展的nginx命令行参数
方法:
切换至
/usr/local/nginx/sbin
列出当前已编译的模块
./nginx -m
列出当前支持的指令
./nginx -l
日志抽样支持
方法:
Example:access_log xxxx ratio=0.01;
作用:
减少日志数量
 

版本发布

  • Tengine-2.1.1 [2015-08-12]
  • Feature: 支持动态upstream更新 [yzprofile]
  • Feature: 增强ngx_http_reqstat_module模块 [cfsego]
  • Feature: 增加ssl_verify_client_exception指令 [InfoHunter]
  • Change: 降低解析配置的内存消耗 [ilexshen]
  • Change: trim模块增加$trim_bytes和$trim_original_bytes [taoyuanyuan]
  • Change: 升级debian二进制包的版本到2.1.0 [PeterDaveHello]
  • Change: 将ngx_http_spdy_module模块集成到travis-ci自动编译 [chobits]
  • Change: 更新SPDY/3.1 [chobits]
  • Change: SPDY时关闭proxy_request_buffering指令 [chobits]
  • Change: 增加编译选项支持设置linker [tanguofu]
  • Bugfix: 修复SPDY的Backport bug [nginx official, ym]
  • Bugfix: SPDY和SSL模块一起编译时报错 [ym]
  • Bugfix: 修复打开reuseport的bug [monadbobo]
  • Tengine-2.1.0 [2014-12-19]
  • Feature: 支持SO_REUSEPORT选项,以提升CPU负载均衡性和性能 [monadbobo]
  • Feature: 支持动态解析upstream中出现的域名 [InfoHunter]
  • Feature: rewrite指令支持重定向到命名location [yzprofile]
  • Feature: image_filter指令支持crop_keepx和crop_keepy参数 [Lax]
  • Feature: consistent_hash模块和session_sticky模块支持SSL会话保持 [dinic]
  • Feature: 支持travis-ci.org自动编译 [Jamyn]
  • Feature: 健康检查模块支持FASTCGI检查 [yzprofile]
  • Feature: 增强sysguard模块的功能 [InfoHunter]
  • Feature: 新增变量$normalized_request得到规范化的请求 [yunkai]
  • Feature: dso的include指令支持通配符 [monadbobo]
  • Feature: 新增gzip_clear_etag指令 [taoyuanyuan]
  • Feature: 为log_escape指令添加unprintable参数 [skoo87]
  • Change: 合并nginx-1.6.2版本的修改 [cfsego, taoyuanyuan, chobits]
  • Change: round robin负载均衡算法随机选择某个源站作为循环起点 [taoyuanyuan]
  • Change: 对共享内存中的碎片进行优化 [chobits]
  • Bugfix: SPDY/3关闭连接时去掉drop标志 [chobits]
  • Bugfix: 修复SPDY/3出现连接泄漏的问题 [chobits]
  • Bugfix: 修复limit_req模块将长度超过255个字符的key截断的问题 [chobits]
  • Bugfix: 解析/etc/resolv.conf中的IPv6地址出错 [lifeibo]
  • Bugfix: 通过红黑树查找到错误的upstream [taoyuanyuan]
  • Tengine-2.0.3 [2014-05-30]
  • Feature: 支持按指定关键字(域名,url等)收集Tengine运行状态 [cfsego]
  • Feature: 支持debian、ubuntu打包 [betetrpm, szepeviktor]
  • Change: 合并nginx-1.4.7的修改 [chobits]
  • Change: 使用红黑树优化upstream配置解析和查找 [SarahWang]
  • Change: 更新版权信息
  • Bugfix: 修复session-sticky模块相关问题 [dinic]
  • Bugfix: 修复DSO编译和安装模块的问题 [cfsego]
  • Bugfix: 修复spdy相关问题 [chobits]
  • Tengine-2.0.2 [2014-03-28]
  • Bugfix: 在读事件处理完后继续发送SPDY数据 [chobits]
  • Bugfix: CVE-2014-0133以及CVE-2014-0088 [chobits]
  • Tengine-2.0.1 [2014-03-06]
  • Feature: 请求体不缓存的机制支持chunked输入 [yaoweibin]
  • Feature: trim模块支持更多规则,支持根据变量启用 [taoyuanyuan]
  • Feature: 利用/etc/resolv.conf自动配置resolver [lifeibo, yaoweibin]
  • Feature: 增加$ascii_变量前缀,可以生成任意ASCII字符 [yzprofile]
  • Feature: 增加"image_filter_crop_offset"指令 [lax]
  • Change: 合并截至nginx-1.4.6版本的所有修改 [chobits, cfsego]
  • Bugfix: 修正使用长连接进行健康检查时报错的问题 [lilbedwin]
  • Bugfix: 修正使用WebSocket时nginx崩溃的问题 [Hao Chen]
  • Bugfix: 减少nginx处理大文件时的内存消耗 [cfsego]
  • Bugfix: 在未设置URI时,禁用跳转到named locations的重定向
  • Tengine-2.0.0 [2014-01-08]
  • Feature: 增强DSO模块,编译动态模块不再依赖原始编译环境 [monadbobo]
  • Feature: 支持SPDY v3协议,自动检测同一端口的SPDY请求和HTTP请求 [lilbedwin、chobits]
  • Feature: 支持设置proxy、memcached、fastcgi、scgi、uwsgi在后端失败时的重试次数 [supertcy]
  • Feature: tfs模块在RcServer心跳时汇报访问统计 [zhcn381]
  • Feature: if指令支持比较数值大小:'>'、'<'、'>='、'<=' [flygoast]
  • Feature: 健康检查模块支持长连接检查 [lilbedwin]
  • Feature: trim模块支持SSI和ESI的注释 [taoyuanyuan]
  • Feature: expires_by_types指令支持使用通配符,例如'text/*'匹配子类型 [zhcn381]
  • Feature: 增加$base64_decode_变量前缀,支持计算指定变量的base64解压结果 [yzprofile]
  • Feature: 增加$md5_encode_变量前缀,支持计算指定变量的md5哈希 [yzprofile]
  • Feature: 增加$time_http变量,支持按http格式输出当前时间 [flygoast]
  • Feature: 增加$full_request变量,取得原始的请求url,包括协议类型和域名 [yzprofile]
  • Feature: 增加$escape_uri_变量前缀,支持对指定变量进行url转义 [yzprofile]
  • Feature: 增加$raw_uri变量,支持取得不含参数的原始uri [flygoast]
  • Feature: 支持按微秒记录子请求的请求时间 [jinglong]
  • Feature: 增加API,支持对url进行base64编码 [lilbedwin]
  • Change: 合并nginx-1.4.4版本的修改 [cfsego]
  • Change: 修改stub_status模块,不对子请求进行统计 [jinglong]
  • Bugfix: 修正footer模块,不处理含有Content-Encoding头的响应 [yaoweibin]
  • Bugfix: 修正client_body_postpone_size指令设置为0时出现的问题 [yaoweibin]
  • Bugfix: 修正Lua模块编译时出现警告 [diwayou]
  • Tengine-1.5.2 [2013-11-22]
  • Security: 修复CVE-2013-4547安全漏洞
  • Bugfix: 修复limit_req模块中nodelay无效的问题 [cfsego]
  • Bugfix: 修复trim模块在替换javascript异常的问题 [taoyuanyuan]
  • Tengine-1.5.1 [2013-08-29]
  • Feature: 增加retry_cached_connection指令,可以关闭对后端长连接的无条件重试 [yaoweibin]
  • Feature: sysguard模块的sysguard_load指令中加入ncpu参数 [yzprofile]
  • Bugfix:修复referer模块在https协议时正则匹配失效的问题 [lilbedwin]
  • Bugfix:修复trim模块可能产生0长度块的问题 [taoyuanyuan]
  • Bugfix:修复在使用--without-dso选项时出现的编译错误 [zhuzhaoyuan]
  • Bugfix:修复两个编译警告 [zzjin, diwayou]
  • Tengine-1.5.0 [2013-07-31]
  • Feature: 增加DSO(动态模块加载)兼容性校验机制 [monadbobo]
  • Feature: 增加了请求体不缓存到磁盘的机制,HTTP代理和FastCGI模块收到部分请求体即可以转发给后端服务器 [yaoweibin]
  • Feature: 增加了trim模块,该模块可以自动删除HTML页面中无意义的空白符和注释,减小页面的大小 [taoyuanyuan]
  • Feature: 加入accept filter机制,支持在连接接收以后进行过滤处理 [yzprofile]
  • Feature: 现在server_tag指令可以改变默认错误页面的服务器标识 [zhuzhaoyuan]
  • Bugfix:修复access_log指令中buffer参数失效的问题 [cfsego]
  • Bugfix:修复session_sticky模块在某些情况下没有发出session cookie的问题 [dinic]
  • Tengine-1.4.6 [2013-05-14]
  • Bugifx:合并nginx-1.2.9的更新,修正CVE-2013-2070带来的安全问题。 该安全问题在1.4.0以后版本开始出现 [yaoweibin]
  • Tengine-1.4.5 [2013-05-01]
  • Feature:增加一致性hash模块,可以为后端服务器提供一致性hash的负载均衡方法 [dinic]
    Feature:通过keepalive_timeout指令可以设置后端keepalive连接的超时时间 [jinglong]
    Feature:加入所有模块静态编译或者所有模块动态编译的编译选项 [monadbobo]
    Change:更新Lua模块至0.7.19 [jinglong]
    Change:合并Nginx-1.2.8的更新 [yaoweibin]
    Bugfix:修正syslog和upstream_check模块在GCC-4.4.5上的编译警告 [magicbear]
  • Tengine-1.4.4 [2013-03-21]
  • Feature:增加session_sticky模块,可以为客户端和后端服务器提供会话保持功能 [dinic]
  • Feature:sysguard模块增加空闲内存监控功能 [lifeibo]
  • Feature:geoip模块增加对地区数据库的支持 [jasonlfunk]
  • Feature:log_empty_request指令增加对408响应的空请求支持 [yaoweibin]
  • Change:合并Nginx-1.2.5至Nginx-1.2.7的更新 [cfsego]
  • Change:默认关闭CPU亲缘性 [cfsego]
  • Bugfix:修正在Solaris 11上sysguard和upstream_check模块编译出错的问题 [lifeibo, yaoweibin]
  • Bugfix:修正TFS模块返回值可能错误的问题 [zhcn381]
  • Bugfix: 修正TFS模块上传大文件可能出错的问题 [zhcn381]
  • Tengine-1.4.3 [2013-01-21]
  • Feature:增加TFS模块,可以通过RESTful接口与TFS分布式文件系统通信 [zhcn381, monadbobo]
  • Feature:增加$sent_cookie_XXX系列变量,可以获取响应中Set-Cookie头的cookie值 [skoo87]
  • Feature:syslog指令的发送地址支持域名 [cfsego]
  • Change:upstream块中的server指令增加id属性 [yaoweibin]
  • Bugfix:DSO模块修正reload时可能失败的问题 [monadbobo]
  • Bugfix:修复upstream_check模块当超时时间长于检查时间可能导致段错误的问题 [yaoweibin]
  • Bugfix:修复user_agent模块在请求缺少User-Agent头会段错误的问题 [dinic]
  • Bugfix:修复sysguard模块在Mac OS下面不能工作的问题 [lizi]
  • Tengine-1.4.2 [2012-11-22]
  • Feature:增加--dso-tool-path配置选项,可以选择dso_tool脚本的安装目录 [monadbobo]
  • Feature:增加$unix_time变量,表示当前的时间戳秒数 [yaoweibin]
  • Feature:Makefile中增加test命令以便运行测试用例 [yaoweibin]
  • Feature:sysguard模块可在location里面配置 [lifeibo]
  • Change:合并Nginx-1.2.4和Nginx-1.2.5的更新 [zhuzhaoyuan]
  • Change:增加对input_filter函数返回值的检查,防止第三方模块调用出错 [cfsego]
  • Bugfix:修复limit_req指令不能使用4个参数的问题,感谢LazyZhu的报告 [monadbobo]
  • Bugfix:修复在cygwin下面编译sysinfo文件出错的问题,感谢Cao Peiran的报告 [lifeibo]
  • Bugfix:修复user-agent模块安装时需要拷贝browsers配置文件的问题,感谢Jianbin Xiao的报告 [monadbobo]
  • Bugfix:修复DSO模块RPM打包安装目录出错的问题,感谢Jianbin Xiao和Ren Xiaolei的报告 [monadbobo]
  • Tengine-1.4.1 [2012-10-10]
  • Feature: 添加jemalloc库的支持 [fanjizhao]
  • Feature: 加入$dollar变量, 它的值就是美元符号 [zhuzhaoyuan]
  • Feature: 为worker_cpu_affinity指令加入off选项 [cfsego]
  • Change: 当工作进程异常退出以后,新进程不会绑定CPU亲缘性 [cfsego]
  • Bugfix: 修正在Mac OS操作系统下,Lua模块与LuaJIT动态编译时出现的错误 [monadbobo]
  • Bugfix: 修正动态编译第三方filter模块时出现的模块执行顺序错误 [monadbobo]
  • Tengine-1.4.0 [2012-09-05]
  • Feature: 增加动态模块加载支持(DSO),要添加一个模块不再需要重新编译tengine了 [monadbobo]
  • Feature: 更新Lua模块到最新的稳定版本 [chaoslawful, agentzh, jinglong]
  • Feature: 为健康检查模块增加json和csv格式的输出 [yaoweibin]
  • Feature: 增加log_empty_request指令,可以用来关掉空请求日志——那些连接了但没发数据的连接 [zhuzhaoyuan]
  • Feature: 给concat模块增加concat_delimiter指令,设置文件间的间隔内容 [dinic]
  • Feature: 增加concat_ignore_file_error指令并允许concat的语法更宽松 [dinic]
  • Feature: 给error_page指令增加default选项,以恢复所有的错误页面为默认值 [jinglong]
  • Feature: 给proc模块增加priority指令,可设置proc进程的优先级 [yzprofile]
  • Feature: 给proc模块增加delay_start指令,可设置延迟加载时间 [yzprofile]
  • Change: 集成最新nginx稳定版本1.2.3的内容 [zhuzhaoyuan]
  • Bugfix: 修正一个geo模块设了range但是没有默认值时产生的段错误问题 [yzprofile]
  • Bugfix: 修正一个proc模块的空指针问题 [yzprofile]
  • Bugfix: 修正一个健康检查模块的socket泄漏问题 [yaoweibin]
  • Bugfix: 修正limit_req模块的若干问题 [monadbobo]
  • Bugfix: 修正若干日志输出类型错误的问题 [yaoweibin]
  • Bugfix: 修正perl模块和proc一起打开的一个编译错误 [yzprofile]
  • Tengine-1.3.0 [2012-05-25]
  • Feature:加入Lua模块,可以在配置中使用Lua语言 [chaoslawful, agentzh]
  • Feature:加入procs模块,可以更方便的开启独立进程 [yzprofile]
  • Change:user_agent模块中参数nongreedy改名为greedy [dinic]
  • Bugfix:修复syslog指令中因为指针未初始化引起的段错误 [cfsego]
  • Bugfix:修复syslog指令打开--with-ipv6选项引起的编译错误 [cfsego]
  • Tengine-1.2.5 [2012-05-09]
  • Feature:增加upstream_check模块,对后端服务器做主动健康检查,以自动的下线失效的服务器 [yaoweibin]
  • Feature:允许syslog输出日志时指定程序的标识(program identifier) [cfsego]
  • Change:合并nginx-1.0.14至nginx-1.0.15之间的修改 [zhuzhaoyuan]
  • Change:将accept_mutex_delay的默认值从500毫秒更改为100毫秒以提高性能 [zhuzhaoyuan]
  • Bugfix:修复syslog的一个在后端服务器连接不上导致端错误的bug [cfsego]
  • Bugfix:修复access_log可能和buffer参数冲突的bug [cfsego]
  • Tengine-1.2.4 [2012-03-30]
  • Feature:增加user_agent模块 [dinic]
  • Feature:增加log_escape指令 [agentzh, skoo87]
  • Change:合并nginx-1.0.12至nginx-1.0.14之间的修改 [zhuzhaoyuan]
  • Bugfix:修复limit_req模块的一个bug [liseen.wan]
  • Bugfix:修复subrequest的一个bug [lifeibo]
  • Tengine-1.2.3 [2012-02-27]
  • Feature:增加request_time_cache指令,用来控制是否启用精确的响应时间 [yzprofile]
  • Feature:增加slice模块,获得一个文件的一个片段,可以添加头和尾 [zhuzhaoyuan]
  • Change:合并nginx-1.0.11至nginx-1.0.12之间的修改 [zhuzhaoyuan]
  • Change:去掉无用的user-agent判断 [zhuzhaoyuan]
  • Bugfix:修复upstream中的一个process_header的bug [lifeibo]
  • Bugfix:修复expires_by_types的一个bug [lifeibo]
  • Tengine-1.2.2 [2012-01-11]
  • Feature:增加input body filter机制 [cfsego]
  • Feature:对mail部分支持ssl的dialog [cfsego]
  • Change:合并进nginx-1.0.10至nginx-1.0.11之间的修改 [zhuzhaoyuan]
  • Change:默认关掉lingering_close [zhuzhaoyuan]
  • Bugfix:修正日志管道时的bug [cfsego]
  • Bugfix:修正limit_req的forbid_action无效的bug [monadbobo]
  • Bugfix: 修正backtrace模块backtrace_max_stack_size的问题 [monadbobo]
  • Bugfix:修正内容为空footer模块输出不正确的问题 [dinic]
  • Bugfix:修正syslog时hostname最后一个字母丢失的问题 [cfsego]
  • Tengine-1.2.1 [2011-12-06]
  • Bugfix:修正默认错误日志和访问日志不存在时启动报错的bug [yzprofile]
  • Tengine-1.2.0 [2011-11-29]
  • Feature:错误日志和访问日志支持输出到syslog [cfsego]
  • Feature:错误日志和访问日志支持输出到管道的方式 [cfsego]
  • Feature:增加realloc相关的API,包括内存池 [gongyuan]
  • Feature:HTTP日志支持更多的有关时间的变量 [skoo87]
  • Feature:增加backtrace模块,在coredump时输出调用栈 [monadbobo]
  • Feature:limit_req功能增强,增加白名单,可以有多个条件 [monadbobo]
  • Feature:sysguard模块,load和内存占用偏高时进行保护 [lifeibo]
  • Feature:增加API(ngx_http_header_in/ngx_http_header_out),用来取输入和输出的HTTP头信息 [lifeibo]
  • Feature:增加两个变量$request_time_msec和$request_time_usec,分别是相应时间的毫秒表示和微秒表示 [jinglong]
  • Feature:增加footer模块,可以在HTML末尾添加内容(支持变量) [yunxing]
  • Feature:增加变量$conn_requests,记录当前request是连接上的第几个 [lieyuan]
  • Feature:增加变量$host_comment,插入注释功能,以说明哪台机器产生的请求 [yunxing]
  • Feature:访问日志增加ratio参数,抽样功能,可以减少日志的记录量 [cfsego]
  • Feature:增加server_admin、server_info指令,出错信息提示,更友好的错误页面 [lieyuan]
  • Feature:增加命令行参数-d,把配置文件的内容全部打印出来 [piaoliang]
  • Feature:增加指令expires_by_types,可以根据types来设置超时 [lifeibo]
  • Feature:增加命令行参数-l,可以列出所有的directives [dinic]
  • Feature:增加ngx_atoll的api,可以将字符串转换成64位整数,支持32位与64位系统 [lifeibo]
  • Feature:status line(302,405)现在采用RFC 2616的标准 [zhuzhaoyuan]
  • Feature:ngx_escape_uri/ngx_unescape_uri现在支持PHP/Java的编解码格式 [zhuzhaoyuan]
  • Feature:配置文件include多个文件时按照字母顺序进行包含 [zhuzhaoyuan]
  • Feature:error_page指令增强,支持default,可以把把上一级设置的error_page重新设定 [zhuzhaoyuan]
  • Feature:增加对每请求的响应时间的统计(cacti,tsar) [jinglong]
  • Feature:增加指令server_tag,更强大的控制HTTP服务器的Server头是否显示以及内容是什么 [jinglong]
  • Feature:自动调整worker进程的数目和绑定CPU亲缘性 [cfsego]
  • Feature:增加指令ssl_pass_phrase_dialog,SSL对key进行加密功能 [cfsego]
  • Feature:增加-s选项的start参数 [zhuzhaoyuan]
  • Feature:增加-m选项,可以把已编译的模块列出来 [zhuzhaoyuan]
  • Change:更改msie_padding的默认值为关掉 [zhuzhaoyuan]
  • Bugfix:修复open_file_cache在已经检测到缓存文件发生变化后,仍然返回过时的文件状态信息的问题 [cfsego]
  • Bugfix:修复upsteam在subrequest in memory且keepalive时会导致timeout的bug [lifeibo]
  • Bugfix:修复$sent_http_connection和$sent_http_keep_alive记录不正确的问题 [zhongsheng]
  • Bugfix:修正error_page不能发现重复的code的问题,不能正常继承上一级设置的问题 [zhuzhaoyuan]
  • Bugfix:修正Nginx在处理FastCGI时有重复HTTP头会core dump的bug [monadbobo]
  • Bugfix:修正Nginx对CPU亲缘性设置不正确的bug [cfsego]
2、
3.返回顶部
 
4.返回顶部
 
5.返回顶部
0、
1、
2、
 
6.返回顶部
 
作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

服务器-Web服务器-Tengine:Tengine 百科的更多相关文章

  1. 服务器 Web服务器 应用服务器区别联系

    服务器: 通俗的讲,我们访问一个网站就相当于访问一个服务器的文件,如果想要通过自己的域名来访问一个网站,首先得将域名部署到你的服务器上,然后就可以通过域名访问到你服务器上的网 页文件.ip地址就相当于 ...

  2. 【WEB】一个简单的WEB服务器

    WEB 服务器如何工作的?   HTTP(HyperText Transfer Protocol)是一套计算机通过网络进行通信的规则.计算机专家设计出HTTP,使HTTP客户(如Web浏览器)能够从H ...

  3. web服务器、应用服务器、http服务器区别

    引用 WEB服务器.应用程序服务器.HTTP服务器有何区别?IIS.Apache.Tomcat.Weblogic.WebSphere都各属于哪种服务器     Web服务器的基本功能就是提供Web信息 ...

  4. 无法在web服务器上启动调试。调试失败,因为没有启用集成windows身份验证

    ----注意:以管理员身份运行VS C#中ASP.NET Web应用程序编译时的错误:无法在web服务器上启动调试.调试失败,因为没有启用集成windows身份验证. 解决:打开IIS,在IIS里查看 ...

  5. WEB服务器1--开篇

    WEB服务器 web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档,也可以放置网站文件,让全世界浏览:可以放置数据文件,让全世界下载.目前最主流的三 ...

  6. HTTP架构介绍(1) Web服务器和代理服务器

    HTTP应用协议本身是不能运行的,它需是需要架构在硬件和软件解决方案上,才能在万维网上提供高效的传输服务. 在这系列的文章中,我们将会了解到以下概念: Web服务器 代理服务器 缓存 网关.信道和中继 ...

  7. web服务器的原理

    一:什么是web服务器 web服务器是可以向浏览器等Web客户端提供文档的计算机的程序.当web浏览器连接到服务器上并请求文件时,服务器将处理该请求并将文件发送到该浏览器上,附带的信息会告诉浏览器如何 ...

  8. WEB服务器,TOMCAT和servlet之间的关系

    WEB服务器,TOMCAT和servlet之间的关系 什么是WEB服务器Web服务器是指能够为发出请求的浏览器提供文档的程序.服务器是 一种被动程序,只有浏览器发出请求的时候才会响应.应用层使用 的是 ...

  9. 数据库-mysql语句-查-WEB服务器

    (1)MySQL中的查询 (2)WEB服务器 Order:  订单.排序 Set:设置.集合 Table:表.桌子 1.MySQL中的简单查询 —— 查询结果的排序 示例:查询出所有员工信息,要求按工 ...

随机推荐

  1. dom元素的自上而下自动滚动

    dom元素的自上而下自动滚动 <!doctype html> <html lang="en"> <head> <meta charset= ...

  2. 【洛谷p1981】表达式求值

    题前废话: 咱也不知道咱写了个什么神奇的代码导致_rqy都看不明白它是怎么re掉的, 代码的大致思路是这样的:对于这样一个中缀表达式,先转化成它的后缀表达式的形式,然后利用P1449 后缀表达式 这道 ...

  3. 【洛谷p1077】摆花

    题外废话: 真的超级喜欢这道题 摆花[题目链接] yy一提醒,我发现这道题和[洛谷p2089] 烤鸡有异曲同工之妙(数据更大了更容易TLE呢qwq) SOLUTION1:(暴搜) 搜索:关于搜索就不用 ...

  4. Excel VBA批量处理寸照名字

    需求:因为处理学生学籍照片,从照相馆拿回来的寸照是按班级整理好,文件名是相机编号的文件.那么处理的话,是这么一个思路,通过Excel表格打印出各班A4照片列表,让学生自行填上照片对应姓名.表格收回来后 ...

  5. Codeforces - 1199C - MP3 - 尺取

    https://codeforc.es/contest/1199/problem/C 擦,最后移位运算符溢出了,真的蠢. 肯定是选中间的连续的某段是最优的,维护这个段的长度和其中的元素种类就可以了.小 ...

  6. Elasticsearch7.X 入门学习第一课笔记----基本概念

    原文:Elasticsearch7.X 入门学习第一课笔记----基本概念 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https: ...

  7. WinForm的RadioButton使用小技巧

    http://www.cnblogs.com/sjrhero/articles/1883155.html 当多个RadioButton同在一个容器里面的时候,多半的操作都是要得到其中一个的值这个时候我 ...

  8. Installation of the latest version of netease-cloud-music on Fedora 30 linux platform

    Installation of the latest version of netease-cloud-music on Fedora 30 linux platform Abtract As we  ...

  9. [CF] 8C Looking for Order

    状压模板题 CF难度2000? 我得好好了解一下CF的难度机制了 反正CF的难度比洛谷真实就好了 Code #include<algorithm> #include<iostream ...

  10. alert(1) to win 10