Version 6.0.5 of the Passenger application server has been released. This release contains several packaging changes, a couple new options, and several bugfixes.

Passenger 6, introduced Generic Language Support, or: the ability to support any and all arbitrary apps.

Packaging Changes:

Passenger 6.0.5 adds Ubuntu 20.04 "Focal" packages as well as CentOS/RHEL 8 packages, and removes Ubuntu 19.04 "Disco" packages.

Note that the nginx package provided for CentOS/RHEL 8 is named nginx-mod-http-passenger and will integrate with the official CentOS/RHEL 8 Nginx package from the System AppStream repository.

Passenger 6.0.5 also changes how the Nginx packages on CentOS 7 work. We now provide a dynamic module instead of a full Nginx install, which integrates with the Nginx package available from the EPEL repo. Users of the Nginx integration mode can use the following commands to switch to the new dynamic module based integration (and the system Nginx):

sudo yum remove -y nginx nginx-filesystem
sudo yum clean all && sudo yum update
sudo yum install nginx-mod-http-passenger

New Options:

We added an option for specifying the attributes on the sticky session cookie:

Integration Option
Apache PassengerStickySessionsCookieAttributes "SameSite=Lax; Secure;"
Nginx passenger_sticky_sessions_cookie_attributes "SameSite=Lax; Secure;"
Standalone --sticky-sessions-cookie-attributes "SameSite=Lax; Secure;"

And for Nginx, we added a config option: passenger_temp_path to set the path used for the disk backed response cache; making Passenger more sandbox friendly.

Updates & improvements

  • [Enterprise] Fixed a regression (introduced in 5.0.0) where Flying Passenger could not update the Passenger configuration. Closes GH-1554.

  • Fixes the encoding name for xml output from the passenger-status --show=xml command. Closes GH-2248.

  • Adds the 'etc' gem as an explicit dependency. Closes GH-2124.

  • Adds a user agent to the passenger pre-spawn script. Closes GH-1534.

  • Fixes a compilation issue on FreeBSD. Closes GH-2240.

  • Fixes an issue where rack bodies may not be processed correctly.

  • Improves the database reconnection speed in forked processes. closes GH-2253.

  • [Apache] Protects the path info and script name passed to the app from modifications done by mod_security. Closes GH-2198.

  • Ensures baseuri is set per request, even if config is loaded from cache. Closes GH-2117.

  • Make temp dir toucher cleanup code more resilient to permissions issues.

  • [Nginx] Bumps the preferred Nginx version to 1.18.0 (previously 1.17.3).

  • [Nginx] The preferred PCRE version is now 8.44 (previously 8.43).

  • Removed deprecated rubyforge gemspec property. Contributed by @olleolleolle.

  • Updated various library versions used in precompiled binaries (used for e.g. gem installs):

    • ccache 3.7.9 (was 3.7.3)
    • Curl 7.69.1 (was 7.66.0)
    • Git 2.26.2 (was 2.23.0)
    • GnuPG 2.2.20 (was 2.2.17)
    • libgpg_error 1.37 (was 1.36)
    • OpenSSL 1.0.2u (was 1.0.2t)
    • PCRE 8.44 (was 8.43)
    • s3cmd 2.1.0 (was 2.0.2)
    • RubyGems 3.0.8 (was 3.0.6)
    • Rubies:
      • 2.4.6 -> 2.4.10
      • 2.5.5 -> 2.5.8
      • 2.6.3 -> 2.6.6
      • 2.7.1

Installing 6.0.5

Please see the installation guide for advice on getting started with Passenger. Coming from a language other than Ruby, Python, Meteor or Node? Even if we didn't write a specific tutorial for your language, we made a generic guide that shows you the steps.

Upgrading to 6.0.5

We strongly advise staying up to date with the latest version.

Check out our upgrade guides for the different platforms:

Please be aware that you can enjoy enterprise features and sponsor the open source development directly by buying Phusion Passenger Enterprise.