OpenResty 1.9.7.1 发布,Web 应用服务器

jopen 8年前

OpenResty 1.9.7.1 发布,更新内容如下:

  • upgraded the Nginx core to 1.9.7.

  • ./configure: now we automatically set the environmentMACOSX_DEPLOYMENT_TARGETto the current Mac OS X version (unless the environment is already set) to ensure the LuaJIT build uses the current versions of the system libraries. thanks bsyk for the report.

  • win32: use Windows line breaks in therestyscript file of the binary distribution.

  • win32: upgraded pcre to 8.38 and openssl to 1.0.2e.

  • win32: enabled ngx_http_realip_module, ngx_http_addition_module ngx_http_sub_module, and ngx_http_stub_status_module in the win32 binary package by default.

  • upgraded LuaNginxModule to 0.9.20.

    • avoided allocating the host name buffer when getting peers from the connection pool.

    • recycled the stream cosockets' request cleanup records.

    • feature: added new API functions ngx.worker.count() and ngx.worker.id() for returning the total count of nginx worker processes and the ordinal number (0, 1, 2, and etc) of the current worker. thanks YuanSheng Wang for the patch. also added pure C API for them.

    • feature: added new API functions ngx.timer.pending_count() and ngx.timer.running_count(). thanks Simon Eskildsen for the patch.

    • feature: added new config directive access_by_lua_no_postpone. thanks Delta Yeh for the patch.

    • feature: added new constantngx.HTTP_TEMPORARY_REDIRECT(307) and support for 307 in ngx.redirect(). thanks RocFang for the patch.

    • feature: added new API function ngx.req.is_internal() for testing if the current request is an internal request. thanks Ruoshan Huang for the patch.

    • feature: added many more HTTP status constants asngx.HTTP_XXX. thanks Vadim A. Misbakh-Soloviov for the patch.

    • bugfix: bogusnginx.confparse failure "Lua code block missing the "}" character" might happen when there are many Lua code blocks inlined. thanks Andreas Lubbe for the report.

    • bugfix: bogus "subrequests cycle" errors might occur with nginx 1.9.5+ due to the recent changes in the nginx core.

    • bugfix: ngx.req.get_uri_args/ngx.req.get_post_args: avoided allocating a zero-size buffer in the nginx memory pool since it might cause problems. thanks Chuanwen Chen for the report and patch.

    • bugfix: modifying the built-in headerX-Forwarded-Forvia ngx.req.set_header() or ngx.req.clear_header() might not take effect in some parts of the nginx core (like$proxy_add_x_forwarded_for). thanks aviramc for the patch.

    • bugfix: we lacked detailed context info in error messages due to use of disabled Lua API in body_filter_by_lua*. thanks Dejiang Zhu for the patch.

    • bugfix: fixed a potential data alignment issue in the ngx.var setter API.

    • bugfix: we had data alignment issues in the subrequest API which can explode on systems like ARM. thanks Stefan Parvu for providing the test environment.

    • bugfix: there was a data alignment issue in the tcpsock:setkeepalive() implementation which might lead to crashes on ARM systems. thanks Stefan Parvu for the report.

    • bugfix: fixed C compiler warnings "comparison between signed and unsigned integer expressions" on Windows.

    • optimize: avoided allocating in the nginx request memory pool in stream-typed cosockets' receive*() methods. thanks Lourival Vieira Neto for the patch.

    • optimize: reduced memory allocations in stream-typed cosockets. thanks Dejiang Zhu for the patch.

    • doc: documented the minimum size threshold in lua_shared_dict. thanks mlr3000 for the original patch.

  • upgraded LuaRestyCoreLibrary to 0.1.3.

    • Makefile: added support for relative paths inLUA_LIB_DIR.

    • minor code adjustments from Aapo Talvensaari.

  • upgraded HeadersMoreNginxModule to 0.29.

  • upgraded LuaRestyRedisLibrary to 0.22.

    • tweaked Makefile to allow relative paths inLUA_LIB_DIRwhenDESTDIRis not specified.

    • optimize: moved string concatenation for the Redis request construction onto the C land (taking advantage of the feature that cosockets' send method accepts a table of strings). thanks Dejiang Zhu for the patch.

    • optimize: minor optimizations from Aapo Talvensaari.

  • upgraded RestyCLI to 0.05.

    • bugfix: resty: nginx might report the error "The system cannot find the file specified" inCreateFile()on Windows XP. thanks cover_eye for the report.

  • upgraded LuaJIT to v2.1-20151219: https://github.com/openresty/luajit2/tags

    • FFI: Fix SPLIT pass for CONV i64.u64.

    • x64/LJ_GC64: Fix stack growth in vararg function setup.

    • DynASM/x86: Add rdpmc instruction.

    • OSX: Switch to Clang as the default compiler.

    • iOS: Disable os.execute() when building for iOS >= 8.0.

    • x86/x64: Disassemble AVX/AVX2 instructions.

    • DynASM/x86: Add AVX and AVX2 opcodes.

    • DynASM/x86: Add AES-NI opcodes.

    • DynASM/x86: Restrict shld/shrd to operands with same width.

    • DynASM/x86: Fix some SSE instruction templates.

    • Fix pairs() recording.

    • FFI: Fix ipairs() recording.

    • Drop marks from replayed instructions when sinking.

    • Makefile: ensure we always install the symbolic link for the "luajit" file.

    • imported Mike Pall's latest changes:

详情请看:http://openresty.org/

OpenResty (也称为 ngx_openresty)是一个全功能的 Web 应用服务器。它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项。

来自: http://www.oschina.net/news/69497/openresty-1-9-7-1