./www/nginx, Lightweight HTTP server and mail proxy server

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.10.1nb1, Package name: nginx-1.10.1nb1, Maintainer: joerg

Nginx (pronounced engine-x) is a free, open-source, high-performance HTTP
server and reverse proxy, as well as an IMAP/POP3 proxy server. Igor Sysoev
started development of Nginx in 2002, with the first public release in 2004.
Nginx now hosts nearly 12.18% (22.2M) of active sites across all domains.
Nginx is known for its high performance, stability, rich feature set, simple
configuration, and low resource consumption.

Nginx is one of a handful of servers written to address the C10K problem.
Unlike traditional servers, Nginx doesn't rely on threads to handle requests.
Instead it uses a much more scalable event-driven (asynchronous) architecture.
This architecture uses small, but more importantly, predictable amounts of
memory under load.
Even if you don't expect to handle thousands of simultaneous requests, you can
still benefit from Nginx's high-performance and small memory footprint.
Nginx scales in all directions: from the smallest VPS all the way up to
clusters of servers.

Nginx powers several high-visibility sites, such as Netflix, Hulu, Pinterest,
CloudFlare, Airbnb, WordPress.com, GitHub, SoundCloud, Zynga, Eventbrite,
Zappos, Media Temple, Heroku, RightScale, Engine Yard and NetDNA.


Required to run:
[devel/pcre]

Required to build:
[pkgtools/cwrappers]

Package options: inet6, pcre, ssl

Master sites:

SHA1: 9c5d4e06d309bbe2efa41f09dd53912e3c3d3a75
RMD160: fc5c35bf54166c5ff2a58af19a36882cd64b1dd5
Filesize: 887.771 KB

Version history: (Expand)


CVS history: (Expand)


   2016-11-24 12:35:23 by Maya Rashish | Files touched by this commit (3)
Log message:
nginx: don't hard code pkgsrc paths, they're just defaults.

PR pkg/51593: nginx configure error the HTTP rewrite module requires the PCRE library
   2016-08-03 12:23:40 by Adam Ciarcinski | Files touched by this commit (1248) | Package updated
Log message:
Revbump after graphics/gd update
   2016-06-15 16:49:11 by Filip Hajny | Files touched by this commit (1) | Package updated
Log message:
Update www/nginx to 1.10.1.
Update 3rd party modules in options.mk.

Changes with nginx 1.10.1

- Security: a segmentation fault might occur in a worker process while
  writing a specially crafted request body to a temporary file
  (CVE-2016-4450); the bug had appeared in 1.3.9.

Changes with nginx 1.10.0

- 1.10.x stable branch.

Changes with nginx 1.9.15

- Bugfix: "recv() failed" errors might occur when using HHVM as a
  FastCGI server.

- Bugfix: when using HTTP/2 and the "limit_req" or "auth_request"
  directives a timeout or a "client violated flow control" error might
  occur while reading client request body; the bug had appeared in
  1.9.14.

- Workaround: a response might not be shown by some browsers if HTTP/2
  was used and client request body was not fully read; the bug had
  appeared in 1.9.14.

- Bugfix: connections might hang when using the "aio threads"
  directive.
  Thanks to Mindaugas Rasiukevicius.

Changes with nginx 1.9.14

- Feature: OpenSSL 1.1.0 compatibility.

- Feature: the "proxy_request_buffering", \ 
"fastcgi_request_buffering",
  "scgi_request_buffering", and "uwsgi_request_buffering" \ 
directives
  now work with HTTP/2.

- Bugfix: "zero size buf in output" alerts might appear in logs when
  using HTTP/2.

- Bugfix: the "client_max_body_size" directive might work incorrectly
  when using HTTP/2.

- Bugfix: of minor bugs in logging.

Changes with nginx 1.9.13

- Change: non-idempotent requests (POST, LOCK, PATCH) are no longer
  passed to the next server by default if a request has been sent to a
  backend; the "non_idempotent" parameter of the \ 
"proxy_next_upstream"
  directive explicitly allows retrying such requests.

- Feature: the ngx_http_perl_module can be built dynamically.

- Feature: UDP support in the stream module.

- Feature: the "aio_write" directive.

- Feature: now cache manager monitors number of elements in caches and
  tries to avoid cache keys zone overflows.

- Bugfix: "task already active" and "second aio post" alerts \ 
might
  appear in logs when using the "sendfile" and "aio" \ 
directives with
  subrequests.

- Bugfix: "zero size buf in output" alerts might appear in logs if
  caching was used and a client closed a connection prematurely.

- Bugfix: connections with clients might be closed needlessly if
  caching was used.
  Thanks to Justin Li.

- Bugfix: nginx might hog CPU if the "sendfile" directive was used on
  Linux or Solaris and a file being sent was changed during sending.

- Bugfix: connections might hang when using the "sendfile" and "aio
  threads" directives.

- Bugfix: in the "proxy_pass", "fastcgi_pass", \ 
"scgi_pass", and
  "uwsgi_pass" directives when using variables.
  Thanks to Piotr Sikora.

- Bugfix: in the ngx_http_sub_filter_module.

- Bugfix: if an error occurred in a cached backend connection, the
  request was passed to the next server regardless of the
  proxy_next_upstream directive.

- Bugfix: "CreateFile() failed" errors when creating temporary files
  on
  Windows.

Changes with nginx 1.9.12

- Feature: Huffman encoding of response headers in HTTP/2.
  Thanks to Vlad Krasnov.

- Feature: the "worker_cpu_affinity" directive now supports more than
  64 CPUs.

- Bugfix: compatibility with 3rd party C++ modules; the bug had
  appeared in 1.9.11.
  Thanks to Piotr Sikora.

- Bugfix: nginx could not be built statically with OpenSSL on Linux;
  the bug had appeared in 1.9.11.

- Bugfix: the "add_header ... always" directive with an empty value
  did
  not delete "Last-Modified" and "ETag" header lines from error
  responses.

- Workaround: "called a function you should not call" and "shutdown
  while in init" messages might appear in logs when using OpenSSL
  1.0.2f.

- Bugfix: invalid headers might be logged incorrectly.

- Bugfix: socket leak when using HTTP/2.

- Bugfix: in the ngx_http_v2_module.

Changes with nginx 1.9.11

- Feature: TCP support in resolver.

- Feature: dynamic modules.

- Bugfix: the $request_length variable did not include size of request
  headers when using HTTP/2.

- Bugfix: in the ngx_http_v2_module.

Changes with nginx 1.9.10

- Security: invalid pointer dereference might occur during DNS server
  response processing if the "resolver" directive was used, allowing an
  attacker who is able to forge UDP packets from the DNS server to
  cause segmentation fault in a worker process (CVE-2016-0742).

- Security: use-after-free condition might occur during CNAME response
  processing if the "resolver" directive was used, allowing an attacker
  who is able to trigger name resolution to cause segmentation fault in
  a worker process, or might have potential other impact
  (CVE-2016-0746).

- Security: CNAME resolution was insufficiently limited if the
  "resolver" directive was used, allowing an attacker who is able to
  trigger arbitrary name resolution to cause excessive resource
  consumption in worker processes (CVE-2016-0747).

- Feature: the "auto" parameter of the "worker_cpu_affinity"
  directive.

- Bugfix: the "proxy_protocol" parameter of the "listen" \ 
directive did
  not work with IPv6 listen sockets.

- Bugfix: connections to upstream servers might be cached incorrectly
  when using the "keepalive" directive.

- Bugfix: proxying used the HTTP method of the original request after
  an "X-Accel-Redirect" redirection.

Changes with nginx 1.9.9

- Bugfix: proxying to unix domain sockets did not work when using
  variables; the bug had appeared in 1.9.8.

Changes with nginx 1.9.8

- Feature: pwritev() support.

- Feature: the "include" directive inside the "upstream" block.

- Feature: the ngx_http_slice_module.

- Bugfix: a segmentation fault might occur in a worker process when
  using LibreSSL; the bug had appeared in 1.9.6.

- Bugfix: nginx could not be built on OS X in some cases.

Changes with nginx 1.9.7

- Feature: the "nohostname" parameter of logging to syslog.

- Feature: the "proxy_cache_convert_head" directive.

- Feature: the $realip_remote_addr variable in the
  ngx_http_realip_module.

- Bugfix: the "expires" directive might not work when using variables.

- Bugfix: a segmentation fault might occur in a worker process when
  using HTTP/2; the bug had appeared in 1.9.6.

- Bugfix: if nginx was built with the ngx_http_v2_module it was
  possible to use the HTTP/2 protocol even if the "http2" parameter of
  the "listen" directive was not specified.

- Bugfix: in the ngx_http_v2_module.

Changes with nginx 1.9.6

- Bugfix: a segmentation fault might occur in a worker process when
  using HTTP/2.
  Thanks to Piotr Sikora and Denis Andzakovic.

- Bugfix: the $server_protocol variable was empty when using HTTP/2.

- Bugfix: backend SSL connections in the stream module might be timed
  out unexpectedly.

- Bugfix: a segmentation fault might occur in a worker process if
  different ssl_session_cache settings were used in different virtual
  servers.

- Bugfix: nginx/Windows could not be built with MinGW gcc; the bug had
  appeared in 1.9.4.
  Thanks to Kouhei Sutou.

- Bugfix: time was not updated when the timer_resolution directive was
  used on Windows.

- Miscellaneous minor fixes and improvements.
  Thanks to Markus Linnala, Kurtis Nusbaum and Piotr Sikora.

Changes with nginx 1.9.5

- Feature: the ngx_http_v2_module (replaces ngx_http_spdy_module).
  Thanks to Dropbox and Automattic for sponsoring this work.

- Change: now the "output_buffers" directive uses two buffers by
  default.

- Change: now nginx limits subrequests recursion, not simultaneous
  subrequests.

- Change: now nginx checks the whole cache key when returning a
  response from cache.
  Thanks to Gena Makhomed and Sergey Brester.

- Bugfix: "header already sent" alerts might appear in logs when using
  cache; the bug had appeared in 1.7.5.

- Bugfix: "writev() failed (4: Interrupted system call)" errors might
  appear in logs when using CephFS and the "timer_resolution" directive
  on Linux.

- Bugfix: in invalid configurations handling.
  Thanks to Markus Linnala.

- Bugfix: a segmentation fault occurred in a worker process if the
  "sub_filter" directive was used at http level; the bug had appeared
  in 1.9.4.

Changes with nginx 1.9.4

- Change: the "proxy_downstream_buffer" and \ 
"proxy_upstream_buffer"
  directives of the stream module are replaced with the
  "proxy_buffer_size" directive.

- Feature: the "tcp_nodelay" directive in the stream module.

- Feature: multiple "sub_filter" directives can be used
  simultaneously.

- Feature: variables support in the search string of the "sub_filter"
  directive.

- Workaround: configuration testing might fail under Linux OpenVZ.
  Thanks to Gena Makhomed.

- Bugfix: old worker processes might hog CPU after reconfiguration
  with
  a large number of worker_connections.

- Bugfix: a segmentation fault might occur in a worker process if the
  "try_files" and "alias" directives were used inside a \ 
location given
  by a regular expression; the bug had appeared in 1.7.1.

- Bugfix: the "try_files" directive inside a nested location given by
  a regular expression worked incorrectly if the "alias" directive was
  used in the outer location.

- Bugfix: in hash table initialization error handling.

- Bugfix: nginx could not be built with Visual Studio 2015.

Changes with nginx 1.9.3

- Change: duplicate "http", "mail", and "stream" \ 
blocks are now
  disallowed.

- Feature: connection limiting in the stream module.

- Feature: data rate limiting in the stream module.

- Bugfix: the "zone" directive inside the "upstream" block \ 
did not
  work on Windows.

- Bugfix: compatibility with LibreSSL in the stream module.
  Thanks to Piotr Sikora.

- Bugfix: in the "--builddir" configure parameter.
  Thanks to Piotr Sikora.

- Bugfix: the "ssl_stapling_file" directive did not work; the bug had
  appeared in 1.9.2.
  Thanks to Faidon Liambotis and Brandon Black.

- Bugfix: a segmentation fault might occur in a worker process if the
  "ssl_stapling" directive was used; the bug had appeared in 1.9.2.
  Thanks to Matthew Baldwin.

Changes with nginx 1.9.2

- Feature: the "backlog" parameter of the "listen" \ 
directives of the
  mail proxy and stream modules.

- Feature: the "allow" and "deny" directives in the stream \ 
module.

- Feature: the "proxy_bind" directive in the stream module.

- Feature: the "proxy_protocol" directive in the stream module.

- Feature: the -T switch.

- Feature: the REQUEST_SCHEME parameter added to the fastcgi.conf,
  fastcgi_params, scgi_params, and uwsgi_params standard configuration
  files.

- Bugfix: the "reuseport" parameter of the "listen" \ 
directive of the
  stream module did not work.

- Bugfix: OCSP stapling might return an expired OCSP response in some
  cases.

Changes with nginx 1.9.1

- Change: now SSLv3 protocol is disabled by default.

- Change: some long deprecated directives are not supported anymore.

- Feature: the "reuseport" parameter of the "listen" directive.
  Thanks to Yingqi Lu at Intel and Sepherosa Ziehau.

- Feature: the $upstream_connect_time variable.

- Bugfix: in the "hash" directive on big-endian platforms.

- Bugfix: nginx might fail to start on some old Linux variants; the
  bug had appeared in 1.7.11.

- Bugfix: in IP address parsing.
  Thanks to Sergey Polovko.

Changes with nginx 1.9.0

- Change: obsolete aio and rtsig event methods have been removed.

- Feature: the "zone" directive inside the "upstream" block.

- Feature: the stream module.

- Feature: byte ranges support in the ngx_http_memcached_module.
  Thanks to Martin Mlynar.

- Feature: shared memory can now be used on Windows versions with
  address space layout randomization.
  Thanks to Sergey Brester.

- Feature: the "error_log" directive can now be used on mail and
  server levels in mail proxy.

- Bugfix: the "proxy_protocol" parameter of the "listen" \ 
directive did
  not work if not specified in the first "listen" directive for a
  listen socket.
   2016-06-08 21:25:20 by Thomas Klausner | Files touched by this commit (2236) | Package updated
Log message:
Bump PKGREVISION for perl-5.24.
   2016-06-08 12:16:57 by Jonathan Perkin | Files touched by this commit (89)
Log message:
Remove the stability entity, it has no meaning outside of an official context.
   2016-06-08 11:46:05 by Jonathan Perkin | Files touched by this commit (47)
Log message:
Change the service_bundle name to "export" to reduce diffs between the
original manifest.xml file and the output from "svccfg export".
   2016-05-31 21:44:47 by Joerg Sonnenberger | Files touched by this commit (2)
Log message:
Avoid CVE-2016-4450 (NULL dereference while saving client body to
temporary file). Bump revision.
   2016-03-05 12:29:49 by Jonathan Perkin | Files touched by this commit (1813) | Package updated
Log message:
Bump PKGREVISION for security/openssl ABI bump.