Version 7 of the Passenger application server is now available in preview. This version introduces support for WebSockets with Apache httpd and parallel rolling restarts which can allow a rolling restart to complete faster at the cost of temporarily increased memory use.

Other Improvements

  • [Ruby] Increase minimum supported Ruby to 3.0.
  • Fix a Passenger core memory leak: memory grew with every connection that closed before sending complete request headers, including idle keep-alive connections, and with every request rejected for invalid headers.

Apache WebSockets

Support WebSockets and other protocol upgrades, over HTTP/1.1 and Apache 2.4 or later. Each open connection occupies an Apache worker for its lifetime, so MaxRequestWorkers bounds how many can be open at once. The new PassengerUpgradeIdleTimeout option closes a connection that has been idle for 60 seconds, as Nginx and mod_proxy_wstunnel also do by default; raise it for applications that can be silent for longer, or set 0 to disable it. Closes GH-1202.

Parallel Rolling Restarts

Rolling restarts can now replace several processes at a time, instead of one at a time for the whole pool. The number in flight is set with passenger_rolling_restart_concurrency (Nginx), PassengerRollingRestartConcurrency (Apache), --rolling-restart-concurrency (Standalone), must be smaller than the pool size, and defaults to 1. Closes GH-2651.

Installing 7-preview

Passenger 7 preview can be installed by using the following repos:

sudo dnf install -y dnf-utils
sudo dnf install -y "https://dl.fedoraproject.org/pub/epel/epel-release-latest-$(rpm -E %rhel).noarch.rpm"
sudo dnf config-manager --enable epel
sudo dnf clean all
sudo dnf update -y
sudo dnf config-manager --add-repo https://oss-binaries.phusionpassenger.com/yum/definitions/el-passenger-testing.repo
# install the package you want:
sudo dnf install -y [ passenger | nginx-mod-http-passenger | mod_passenger ]

Enterprise Linux with Passenger OSS

sudo dnf install -y dnf-utils
sudo dnf install -y "https://dl.fedoraproject.org/pub/epel/epel-release-latest-$(rpm -E %rhel).noarch.rpm"
sudo dnf config-manager --enable epel
sudo dnf clean all
sudo dnf update -y
sudo curl --fail -sSL -u "download:$YOUR_DOWNLOAD_TOKEN" -o /etc/yum.repos.d/passenger.repo https://www.phusionpassenger.com/enterprise_yum/el-passenger-enterprise.repo
# install the package you want:
sudo dnf install -y [ passenger-enterprise | nginx-mod-http-passenger-enterprise | mod_passenger_enterprise ]

Enterprise Linux with Passenger Enterprise

sudo apt-get install -y dirmngr gnupg apt-transport-https ca-certificates curl
curl https://oss-binaries.phusionpassenger.com/auto-software-signing-gpg-key-2025.txt | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/phusion.gpg >/dev/null
sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger-testing $(. /etc/os-release; echo -n "$VERSION_CODENAME") main > /etc/apt/sources.list.d/passenger.list'
sudo apt-get update
# Install the pacakge you want:
sudo apt-get install -y [ passenger | libnginx-mod-http-passenger | libapache2-mod-passenger ]

Debian/Ubuntu with Passenger OSS

sudo apt-get install -y dirmngr gnupg apt-transport-https ca-certificates curl
curl https://oss-binaries.phusionpassenger.com/auto-software-signing-gpg-key-2025.txt | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/phusion.gpg >/dev/null
sudo sh -c 'echo machine www.phusionpassenger.com/enterprise_apt login download password "$YOUR_DOWNLOAD_TOKEN" > /etc/apt/auth.conf.d/passenger.conf'
sudo sh -c 'echo deb https://www.phusionpassenger.com/enterprise_apt_testing $(. /etc/os-release; echo -n "$VERSION_CODENAME") main > /etc/apt/sources.list.d/passenger.list'
sudo apt-get update
# Install the pacakge you want:
sudo apt-get install -y [ passenger-enterprise | libnginx-mod-http-passenger-enterprise | libapache2-mod-passenger-enterprise ]

Debian/Ubuntu with Passenger Enterprise

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