c90a743
#############
c90a743
Upgrade notes
c90a743
#############
c90a743
c90a743
To resolve numerous security flaws, the nginx package was updated to 1.10.x.
c90a743
c90a743
You should review your configuration files in /etc/nginx to determine if there
59a2189
are any incompatibilities. Below is a summary of the main incompatible changes.
59a2189
Some nginx directives have been changed or removed, so you may need to modify
59a2189
your configuration.
c90a743
c90a743
Please see upstream release notes for a complete list of new features,
c90a743
bug fixes, and changes: http://nginx.org/en/CHANGES-1.10
59a2189
One notable feature is support for HTTP/2.
35afe26
35afe26
Nginx gained support for dynamic modules. As part of this update, dynamic
35afe26
modules have been split into subpackages. For the time being these are hard
35afe26
dependencies to aid the upgrade path. When you install nginx, all of these
35afe26
modules are installed and enabled by default:
c90a743
  - nginx-mod-http-geoip
c90a743
  - nginx-mod-http-image-filter
c90a743
  - nginx-mod-http-perl
c90a743
  - nginx-mod-http-xslt-filter
c90a743
  - nginx-mod-mail
c90a743
  - nginx-mod-stream
c90a743
c90a743
Changes with nginx 1.10.x
c90a743
c90a743
    *) Change: non-idempotent requests (POST, LOCK, PATCH) are no longer
c90a743
       passed to the next server by default if a request has been sent to a
c90a743
       backend; the "non_idempotent" parameter of the "proxy_next_upstream"
c90a743
       directive explicitly allows retrying such requests.
c90a743
c90a743
    *) Change: now the "output_buffers" directive uses two buffers by
c90a743
       default.
c90a743
c90a743
    *) Change: now nginx limits subrequests recursion, not simultaneous
c90a743
       subrequests.
c90a743
c90a743
    *) Change: now nginx checks the whole cache key when returning a
c90a743
       response from cache.
c90a743
       Thanks to Gena Makhomed and Sergey Brester.
c90a743
c90a743
    *) Change: the "proxy_downstream_buffer" and "proxy_upstream_buffer"
c90a743
       directives of the stream module are replaced with the
c90a743
       "proxy_buffer_size" directive.
c90a743
c90a743
    *) Change: duplicate "http", "mail", and "stream" blocks are now
c90a743
       disallowed.
c90a743
c90a743
    *) Change: now SSLv3 protocol is disabled by default.
c90a743
c90a743
    *) Change: some long deprecated directives are not supported anymore.
c90a743
c90a743
    *) Change: obsolete aio and rtsig event methods have been removed.
c90a743
c90a743
Changes with nginx 1.8.x
c90a743
c90a743
    *) Change: the "sendfile" parameter of the "aio" directive is
c90a743
       deprecated; now nginx automatically uses AIO to pre-load data for
c90a743
       sendfile if both "aio" and "sendfile" directives are used.
c90a743
c90a743
    *) Change: now the "If-Modified-Since", "If-Range", etc. client request
c90a743
       header lines are passed to a backend while caching if nginx knows in
c90a743
       advance that the response will not be cached (e.g., when using
c90a743
       proxy_cache_min_uses).
c90a743
c90a743
    *) Change: now after proxy_cache_lock_timeout nginx sends a request to a
c90a743
       backend with caching disabled; the new directives
c90a743
       "proxy_cache_lock_age", "fastcgi_cache_lock_age",
c90a743
       "scgi_cache_lock_age", and "uwsgi_cache_lock_age" specify a time
c90a743
       after which the lock will be released and another attempt to cache a
c90a743
       response will be made.
c90a743
c90a743
    *) Change: the "log_format" directive can now be used only at http
c90a743
       level.
c90a743
c90a743
    *) Change: now nginx takes into account the "Vary" header line in a
c90a743
       backend response while caching.
c90a743
c90a743
    *) Change: the deprecated "limit_zone" directive is not supported
c90a743
       anymore.
c90a743
c90a743
    *) Change: now the "stub_status" directive does not require a parameter.
c90a743
c90a743
    *) Change: URI escaping now uses uppercase hexadecimal digits.
c90a743
       Thanks to Piotr Sikora.
c90a743