Commit Graph

164 Commits (release-1.13.4)

Author SHA1 Message Date
Roman Arutyunyan 04b9434b18 Stream: filters. 2016-09-15 14:55:46 +03:00
Maxim Dounin ab8504b937 An internal SHA1 implementation. 2016-06-09 16:55:38 +03:00
Roman Arutyunyan 2ce791f2cd Stream: UDP proxy. 2016-01-20 19:52:12 +03:00
Maxim Dounin 0805ba14e7 Dynamic modules: auto/module script.
This script simplifies configuration of additional modules,
including 3rd party ones.  The script is extensible, and
will be used to introduce dynamic linking of modules in upcoming
changes.

3rd party module config scripts are called with ngx_module_link
preset to "ADDON" - this allows config scripts to call auto/module
without ngx_module_link explicitly defined, as well as testing if
new interface is in place if compatibility with older nginx versions
is desired.

In collaboration with Ruslan Ermilov.
2016-02-04 18:30:21 +03:00
Maxim Dounin 86cc342a26 Dynamic modules: dlopen() support. 2016-02-04 18:30:21 +03:00
Maxim Dounin 7988334570 Dynamic modules: moved module-related stuff to separate files. 2016-02-04 18:30:21 +03:00
Roman Arutyunyan 8ba626ccd7 Slice filter.
Splits a request into subrequests, each providing a specific range of response.
The variable "$slice_range" must be used to set subrequest range and proper
cache key.  The directive "slice" sets slice size.

The following example splits requests into 1-megabyte cacheable subrequests.

server {
    listen 8000;

    location / {
        slice 1m;

        proxy_cache cache;
        proxy_cache_key $uri$is_args$args$slice_range;
        proxy_set_header Range $slice_range;
        proxy_cache_valid 200 206 1h;
        proxy_pass http://127.0.0.1:9000;
    }
}
2015-12-07 16:30:48 +03:00
Ruslan Ermilov e6ba472990 Configure: removed comment obsolete in 3b763d36e055. 2015-11-30 19:01:53 +03:00
Valentin Bartenev ee37ff613f The HTTP/2 implementation (RFC 7240, 7241).
The SPDY support is removed, as it's incompatible with the new module.
2015-09-11 20:13:06 +03:00
Vladimir Homutov 14ff3d4f87 Stream: connection limiting module.
stream {
    limit_conn_zone $binary_remote_addr zone=perip:1m;
    limit_conn_log_level error;

    server {
        ...
        limit_conn perip 1;
    }
}
2015-06-18 14:17:30 +03:00
Maxim Dounin 9984f3053f Moved ngx_http_parse_time() to core, renamed accordingly.
The function is now called ngx_parse_http_time(), and can be used by
any code to parse HTTP-style date and time.  In particular, it will be
used for OCSP stapling.

For compatibility, a macro to map ngx_http_parse_time() to the new name
provided for a while.
2015-06-11 20:42:31 +03:00
Vladimir Homutov 8ab1aa612d Stream: access module.
stream {
    server {
        ...
        allow 127.0.0.1;
        deny all;
    }
}
2015-06-04 13:04:12 +03:00
Ruslan Ermilov 33b8e5bc06 Removed the obsolete rtsig module. 2015-04-23 14:17:40 +03:00
Ruslan Ermilov c1882d9f3f Removed the obsolete aio module. 2015-04-22 18:57:32 +03:00
Ruslan Ermilov c799c82faa Stream: port from NGINX+. 2015-04-20 13:05:11 +03:00
Ruslan Ermilov cf31347ee8 Upstream: the "zone" directive.
Upstreams with the "zone" directive are kept in shared memory,
with a consistent view of all worker processes.
2015-04-14 19:01:25 +03:00
Ruslan Ermilov 3fc23e2542 Core: read/write locks. 2015-03-21 14:05:08 +03:00
Ruslan Ermilov babd64e344 Removed busy locks. 2015-03-20 06:45:32 +03:00
Ruslan Ermilov d1ec868e32 Removed old pthread implementation. 2015-03-20 06:43:19 +03:00
Ruslan Ermilov c84c19f5bf Removed old FreeBSD rfork() thread implementation. 2015-03-20 06:43:19 +03:00
Valentin Bartenev 305fc021db Thread pools implementation. 2015-03-14 17:37:07 +03:00
Roman Arutyunyan 9b5a17b5e2 Upstream: generic hash module. 2014-06-02 16:16:22 +04:00
Vladimir Homutov 493b898ae9 Added syslog support for error_log and access_log directives. 2014-05-12 16:34:15 +04:00
Roman Arutyunyan 0b5f329784 Added server-side support for PROXY protocol v1 (ticket ).
Client address specified in the PROXY protocol header is now
saved in the $proxy_protocol_addr variable and can be used in
the realip module.

This is currently not implemented for mail.
2014-03-17 17:41:24 +04:00
Maxim Dounin 4c53a38fb5 Auth request module import. 2013-08-21 19:19:47 +04:00
Valentin Bartenev 2686cb4452 Preliminary experimental support for SPDY draft 2. 2013-03-20 10:36:57 +00:00
Maxim Dounin 85c920a0cd OCSP stapling: ssl_stapling_file support.
Very basic version without any OCSP responder query code, assuming valid
DER-encoded OCSP response is present in a ssl_stapling_file configured.

Such file might be produced with openssl like this:

openssl ocsp -issuer root.crt -cert domain.crt -respout domain.staple \
             -url http://ocsp.example.com
2012-10-01 12:41:08 +00:00
Maxim Dounin 90bd33e8eb Gunzip filter import. 2012-09-10 16:52:47 +00:00
Maxim Dounin 4cb4e8d179 Upstream: least_conn balancer module. 2012-06-03 23:21:26 +00:00
Ruslan Ermilov fbd32d4d19 worker_cpu_affinity: cleaned up Linux implementation, added FreeBSD support. 2012-03-21 13:58:51 +00:00
Maxim Konovalov f8d59e33f3 Copyright updated. 2012-01-18 15:07:43 +00:00
Valentin Bartenev bc5191c7bc Added support for regex study and PCRE JIT (ticket ) optimizations on
configuration phase.
2011-12-26 13:10:36 +00:00
Valentin Bartenev 255e20ad21 Renamed ngx_http_limit_zone_module to ngx_http_limit_conn_module. 2011-11-14 14:04:42 +00:00
Maxim Dounin 44002e541f Upstream keepalive module. 2011-09-15 19:28:18 +00:00
Igor Sysoev dde4d7e300 ngx_http_mp4_module 2011-09-09 10:22:34 +00:00
Igor Sysoev 5dc5945ccf "$apr1", "{PLAIN}", and "{SSHA}" password methods in auth basic module
patch by Maxim Dounin
2011-05-16 14:54:50 +00:00
Igor Sysoev b3451785fe an internal MD5 implemenation
patch by Maxim Dounin
2011-04-15 15:58:06 +00:00
Igor Sysoev 42f1e1cb96 ngx_murmur_hash2() 2011-04-15 10:59:24 +00:00
Igor Sysoev ee5f9e50b9 ngx_http_scgi_module 2010-06-18 15:51:14 +00:00
Igor Sysoev 3a881d30b5 import original ngx_http_uwsgi_module version 2010-06-01 15:53:11 +00:00
Igor Sysoev fadd4bd25c ngx_http_split_clients_module 2010-05-14 09:02:10 +00:00
Igor Sysoev 4985109dba ngx_http_degradation_module 2009-11-16 12:20:00 +00:00
Igor Sysoev a962506498 FreeBSD and Linux AIO support 2009-08-28 08:12:35 +00:00
Igor Sysoev bc10147b9f ngx_http_geoip_module 2009-07-20 07:10:43 +00:00
Igor Sysoev 6ce6fcd12d divide select module into two modules: Unix and Win32 ones 2009-05-06 14:53:54 +00:00
Igor Sysoev e2ada61896 ngx_http_image_filter_module 2009-05-01 18:42:09 +00:00
Igor Sysoev bd91999ea5 Win32 master/workers model 2009-04-20 06:08:47 +00:00
Igor Sysoev 52859f2f13 a prelimiary proxy cache support 2009-03-23 13:14:51 +00:00
Igor Sysoev abe378e820 ngx_http_limit_req_module 2008-11-10 15:22:33 +00:00
Igor Sysoev e52991ecbe ngx_http_secure_link_module 2008-09-27 13:22:10 +00:00