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