Please see the NGINX and NGINX Plus Feature Matrix.
NGINX Plus is convenient, fully supported by NGINX, Inc., and provides a range of advanced features.
It’s convenient: Install pre-built and tested binaries from NGINX’s private repo.
It’s supported: Take advantage of full support and updates from NGINX, Inc., the team behind both NGINX open source and NGINX Plus.
It’s feature-rich: NGINX Plus combines the functionality of a high-performance web server, a powerful front-end load balancer and a highly-scalable accelerating cache to create the ideal end-to-end platform for your web applications. NGINX Plus is built on top of NGINX open source and we are continuing to develop NGINX open source. For more information please see:
What’s the difference between NGINX (F/OSS) and NGINX Plus? and the branching policy in NGINX 1.6 and 1.7 released The relevant benefits may depend on an organization’s current environment and requirements:
- For organizations currently using NGINX open source, NGINX Plus eliminate the complexity of managing a “do-it-yourself” chain of proxies, load balancers and caching servers in a mission-critical application environment.
- For organizations currently using hardware based load balancers, NGINX Plus provides a full set of ADC features in a much more flexible software form factor, on a cost-effective subscription.
- For organizations requiring a modern solution for a scalable, reliable web architecture, NGINX Plus is backed by the 10 year track record of NGINX Open Source powering the worlds busiest websites.
- For organizations requiring a solution for massively scalable HTTP video delivery, NGINX Plus has advanced video support.
NGINX open source is appropriate if…
- you want to view or edit the source code;
- you want compile in 3rd party modules not included in NGINX Plus Extras, or you want to create your own custom modules;
- you want to maintain your own packages and security fixes;
- you are working in an environment where you don’t require support.
- Are running a commercial application or website that requires a predictable, reliable and high performance user experience;
- Have used NGINX OSS, but want to reduce complexity and have a supported NGINX build;
- Are migrating their web architectures from a monolithic application to a lightweight, “scale out” distributed, componentized architecture (and need an outer “shell/routing layer” on top of that);
- Are moving to virtualized/cloud environments and need a more modern, cloud-friendly alternative to their existing hardware-based LB/ADC solutions;
- Have a hardware-based LB/ADC solutions and don’t want to continue to purchase expensive, non-scalable, rigid solutions at 10x more cost compared to NGINX Plus;
- Media/Content owners doing massive HTTP streaming media (HTTP video/audio).
NGINX Plus is the same compact, software-only package for any supported Linux based system as NGINX open source. Packaged virtual appliances are available for Amazon AWS, and it is possible to deploy NGINX Plus within chroot jails, linux containers and your own virtual machine.
The standard NGINX Plus package contains just the NGINX-authored modules from the official open source build and the NGINX Plus extensions. Third-party modules, however, can be dynamically loaded into a running NGINX Plus instance. We build and maintain the most widely used third party modules, a full list of these modules is available here.
Custom or third-party modules not in the list above can also be loaded dynamically into a running NGINX Plus instance. For more details on how to do this, please see this blog post.
Please follow the instructions at: https://cs.nginx.com/repo_setup
You don’t have to re-install anything. You must replace the evaluation certificate with the production certificate or else the evaluation install of NGINX Plus will fail to start once the evaluation certificate has expired. You can get your production certificate from the NGINX Plus Customer Portal. Copy it to the /etc/ssl/nginx directory, replacing the evaluation certificate.
Yes, there is a detailed dashboard, built on the NGINX Plus API. To see it in action, check out our live demo page. In addition, you can monitor NGINX Plus using third‑party tools such as Datadog and New Relic. For more information please see: Live activity monitoring and the reference documentation for the NGINX Plus API module.
You can reload the NGINX configuration without any downtime, and without interrupting any current connections. A soft reconfiguration spawns a new set of NGINX worker processes, the old ones continue to work until completion (but do not accept new requests — all new requests are accepted by the new set of worker processes). Live binary upgrades work in a similar fashion. If the upgrade is successful the old set of NGINX worker processes are signaled to terminate, and the new set takes over. For more information please see: Controlling NGINX
On-the-fly reconfiguration is used to modify load balancing parameters, and to add or remove servers from an upstream group. Please see: On-the-fly reconfiguration of NGINX Plus.
The list of the 3rd party software which is part of the NGINX Plus builds (that is — compiled in) is in Appendix B of the NGINX Plus reference documentation, shipped with the product. NGINX Plus is also linked against the following 3rd party libraries using dynamic linking; we do NOT ship this software with NGINX Plus:
NGINX Plus is also “SSL-aware”, but we do NOT ship/distribute OpenSSL library ourselves in any form.
No. No phone home. We see requests to index the repository when an administrator manually (or automatically) scans for updates. We rely on the honesty of our users through an honour-based license agreement, backed by our master services agreement.
It’s easy to migrate to using dynamic modules with NGINX Plus. To install and dynamically load modules, perform the following steps.
They assume that you have configured your package management tool to retrieve files from NGINX rather than the OS vendor’s distribution. The following commands are appropriate for Debian-based systems.
Use your operating system’s standard package management tool to remove the nginx‑plus‑extras image and install the base nginx-plus image.
# apt-get update # apt-get remove nginx-plus-extras # apt-get install nginx-plus
Install the modules you want to load dynamically (repeat the installation command for each module).
# apt-get install module-name
The dynamically loadable modules are:
Note that some modules are not available for certain OS versions because of OS limitations. For details as well as descriptions of the modules, see the NGINX Plus Technical Specifications.
The /etc/nginx/modules directory is created automatically with symbolic links to the installed locations of the .so files for the selected modules.
In the main (top-level) context in /etc/nginx/nginx.conf, add a
load_moduledirective for each dynamically loadable module you installed.
Check the new configuration for syntactic validity and reload NGINX Plus.
# nginx -t && nginx -s reload
Load balancing algorithms function better in NGINX Plus due to cross-core synchronization, multiple session persistence methods to fine-tune load balancing decisions, health checks to better identify failed servers and slow-start to reintroduce them. For more information please see: Application Load Balancing with NGINX Plus
We currently support the following load-balancing disciplines in NGINX Plus:
- Round-robin and weighted round-robin
- Least-connected and weighted least-connected
- Least-time and weighted least-time
- Source-ip hash-based, and a weighted one
- Generic hash
- Consistent hash
Session persistence methods can identify user sessions and pin their traffic to the appropriate upstream, overriding the load-balancing decision:
- Cookie and variable-based routing (e.g. “jvmroute” and more)
- Learn session persistence
For more information, please see: Application Load Balancing with NGINX Plus
Yes, it does. We have support for cookie-insert, variable-based routing and learn session persistence. Please see: Application Load Balancing with NGINX Plus
We support load balancing for HTTP/HTTPS/FastCGI/uwsgi/SCGI/memcache only. We proxy and route SMTP/POP3/IMAP traffic to a single upstream rather than load-balancing it.
Please see: Application Health Checks with NGINX Plus
NGINX Plus does indeed include an extremely scalable caching engine for both static and dynamic content. Caching is supported for all proxy-modes/protocols, such as HTTP/FastCGI/uwsgi/SCGI. Cached content is stored in a hybrid cache – hot content is stored in memory, and all content is stored on an on-disk cache that persists across software restarts and reboots. For more information please see: Content Caching with NGINX Plus
Yes, NGINX Plus supports full cache invalidation based on either a specific URL, or a wildcard match. Please see: Content Caching with NGINX Plus
Please see: Streaming Media delivery using NGINX Plus.
NGINX F/OSS is updated approximately monthly, on a time-based release program. If you receive NGINX updates from a third party such as an operating system vendor, they may not issue releases as frequently and some vendors track the stable (i.e. legacy) branch rather than mainline (i.e. current) branch. Updates are announced to the [email protected] mailing list.
NGINX Plus is released approximately quarterly; check the NGINX Plus release details. Updates are sent to all registered users of NGINX Plus.
For details on the software release process, please check out the article NGINX 1.6 and 1.7 released.
Notifications of new releases and critical security updates are emailed to registered administrators on our Customer Support portal. Notifications are only sent to users with the admin role – basic and billing users do not receive these notifications.
Please also refer to the NGINX Plus release notes and security updates which are updated regularly. Users of NGINX Amplify can also find version and security advisory information in their system reports.
Licensing and Pricing
The text below should be added to your license conditions, followed by the text of the applicable 2-clause BSD license.
This product contains software provided by NGINX, Inc. and its contributors.
Also, if your build of nginx includes any of the following 3rd party products: zlib, PCRE, OpenSSL — it’s worth including their copyright acknowledgements and disclaimers as well.
NGINX Plus is sold as a software subscription. For more details, please see the NGINX pricing page.
NGINX products are licensed ‘per instance’. Each subscription allows you to run one single instance of the software for the subscription period.
An instance is a single copy of the software running on a single physical or virtual server. If you run two copies of the software on the same physical or virtual server, that counts as two instances. When you run two copies of the software on two different physical or virtual servers, that also counts as two instances. Most DR deployments will require two instances per location, even if one instance is ‘passive’ (running but not receiving traffic).
If you run a ‘hot/cold’ DR deployment where one server is powered down (that is, the NGINX software is not running), and only powered up if the master server fails, then you will only need one subscription because, at any instant, only one copy of the software is running.
There are no other limitations. The software will run at full performance making optimal use of the hardware resources available, and there are no limitations on the size or sophistication of the configuration.
Please describe your requirements in more detail and we’ll do our best to find a solution for you.
There are no configuration limits for virtual host multi-tenancy, or the number of SSL certificates. The maximum number of configuration objects depends on the server’s RAM.
Common Use Cases
The most common use scenarios for NGINX Plus are:
- Application Load Balancing
- Application Acceleration/Application Delivery/Content caching
- SSL Termination/Security Gateway
- API gateway
- Streaming media
Yes, you most certainly can! In fact NGINX has been a preferred proxy/frontend for Node.js for many years now. Please check the following article describing the use of NGINX Plus and WebSocket protocol: NGINX as a WebSockets Proxy or search for the many third-party articles available.
Yes, you can. NGINX Plus is based on the open source NGINX software, used by over 35% of all websites on Amazon Web Services (AWS). We offer both NGINX AMIs (for Amazon Linux and for Ubuntu) and a standalone (BYOL-like) subscription that you can use on top of your own AMIs or VMs. The product links on AWS Marketplace are:
[Editor: As of 2015, two additional AMIs are available:
There is also a “trial” mode now on AWS Marketplace! For more information please see: Getting Started with NGINX Plus on Amazon EC2.
Yes, in most cases you can safely use NGINX Plus as an alternative to Amazon Elastic Load Balancing (ELB), especially if you require highly granular, configurable request routing, precise logging, SSL termination, caching and connections/bandwidth management – all closer to, and nicely integrated with your applications. NGINX Plus can also be used between ELB and your backend servers.
To some extent you can. Bear in mind that CloudFront is a hugely distributed architecture, encompassing thousands of edge nodes around the world. Feature-wise, NGINX Plus can be a very powerful edge-caching solution.
NGINX can be used to proxy streaming media when the streaming media functions are handled by the backend server, which could be NGINX, but the NGINX Plus streaming media extensions are for streaming the content from directly attached storage only. Another method of video content ingest is via RTMP.
Yes, NGINX Plus is a very popular solution for HTTP video distribution, and a great, high-performance, highly scalable, extremely cost-efficient alternative to Wowza or Adobe products.
NGINX Plus is renowned as a web acceleration solution. If your systems (ERP/CRM/E-Commerce/etc.) use HTTP as the communication protocol, NGINX Plus can employ a range of optimizations to reduce unnecessary load on your application backends, improve high availability, reduce latency and contribute to overall higher performance. NGINX Plus introduces the following acceleration techniques to your application stack:
- Offloads concurrency processing — enabling your system to easily handle thousands and tens of thousands of simultaneously connected clients
- Offloads static content — you can move images/videos/CSS/HTML/JS to NGINX Plus from your application backends
- Enables on-the-fly content compression
- Allows to easily cache repetitive content — both static and dynamic
- Provides quite a few flexible techniques for application scalability — by means of server load balancing and application health monitoring
- Improves security with versatile control for session limits, connection and bandwidth throttling
- Allows for moving SSL termination out of the application backends to NGINX Plus to handle all of the SSL complexity.
Can NGINX Replace ... ?
NGINX is a well known open source project originally written by Igor Sysoev, a Russian engineer. Igor started the project in 2002 and made it public in 2004. Since that time NGINX has become a de‑facto standard for high‑performance, scalable websites. Tens of millions of active websites use NGINX, including the majority of the 100,000 busiest websites in the world. Companies like Airbnb, Box, Dropbox, Netflix, Tumblr, WordPress.com, and many others deploy NGINX for scalability and performance reasons.
NGINX is a high‑performance, highly scalable, highly available web server, reverse proxy server, and web accelerator (combining the features of an HTTP load balancer, content cache, and more). NGINX offers a highly scalable architecture that is very different from that of Apache (and many other open source and commercial products in the same category). NGINX has a modular, event‑driven, asynchronous, single-threaded architecture that scales extremely well on generic server hardware and across multi-processor systems. NGINX uses all of the underlying power of modern operating systems like Linux to optimize the usage of memory, CPU, and network, and extract the maximum performance out of a physical or virtual server. The end result is that NGINX can often serve at least 10x more (and often 100–1000x more) requests per server compared to Apache – that means more connected users per server, better bandwidth utilization, less CPU and RAM consumed, and a greener environment too!
For more information about the NGINX architecture please refer to a chapter dedicated to NGINX in the “Architecture of Open Source Applications” book.
Yes, you can. Traditional ADCs and Load Balancers are deployed at the front of an application, to load-balance, persist, cache, route and modify transactions. NGINX Plus provides the same functionality and benefits. ADCs and load balancers operate as reverse proxies, forwarding HTTP requests on to origin servers and application servers. NGINX Plus can operate as an origin server (serving static content directly from disk) and as an application gateway (translating HTTP requests to interface protocols such as FastCGI, uWSGI, memcache) – it provides all the functionality you would expect from a modern web server. NGINX Plus is a proven solution (based on the highly-regarded NGINX Open Source core), creating a full HTTP-driven application platform. You may also check the following articles on nginx.com:
It is certainly possible to use NGINX Plus as an alternative to HAProxy for HTTP load balancing. NGINX Plus is a full fledged web acceleration solution that includes HTTP request routing, HTTP load balancing, scalable content caching, SSL termination, bandwidth management, monitoring and more.
It is certainly possible to use NGINX Plus as an alternative to Varnish. NGINX Plus is a full fledged web acceleration solution that includes HTTP request routing, HTTP load balancing, scalable content caching, SSL termination, bandwidth management, monitoring and more.
Support and Services
NGINX, Inc. offers a diverse set of professional services on top of NGINX Plus, including tuning, configuration, performance optimization, configuration auditing, load simulation, and dedicated technical account management. Professional services cover planning, installation & optimization for NGINX Plus, as well as optimization and tuning of the related operating system settings (when/if applicable). Professional services do not include installation/configuration of any other 3rd party software (e.g. WordPress, Joomla, Magento etc.).
We will typically have a detailed email exchange, or a phone call to outline and define the scope of services first. We then estimate the number of professional services hours required. When both the customer and the NGINX, Inc. representative have signed off on the scope of services, the work commences. Our professional services engineering team keeps track of the hours spent, and tracks them against the purchased amount of hours, notifying the customer regularly (after every major phase).
Yes, it is, provided we can define a clear scope for this project and agree on the professional services required (timeframe/costs/etc.).
Yes, we’ve done quite a bit of such work for a variety of customers.
NGINX, Inc. supports binary builds of the open source NGINX product that are obtained from the nginx.org repositories. Purchase a Basic, Professional, or Enterprise support subscription for each NGINX OSS instance that requires support , and use a pre-built open source NGINX binary instead of an NGINX Plus binary. NGINX, Inc. does not support binaries that you build from source yourself or binary distributions obtained from other sources.
To create a support ticket, please use the email addresses (for you and for NGINX engineering) in your support contract to send and receive support case information. If you have a Professional or Enterprise support subscription, you can get support by phone for critical issues.
We advise users to run the most recent version of NGINX Plus, because we issue updates to the most recent version only. We proactively notify all subscribers when updates are available. We provide technical support for the current release, and any release issued within two years of the current release.
Here are just some of the benefits you gain from the commercial support included with your NGINX Plus purchase:
- Award-winning technical support delivered by NGINX support engineers, professional services and developers
- 24×7 or 9×5 support hours, depending on your purchased service level agreement
- Rapid response times, with as little as 30 minutes guaranteed response time for Enterprise subscribers
- Phone support and hot bug fixes for Professional and Enterprise subscribers
NGINX is happy to provide best-effort support for Professional and Enterprise customers to cover the optional third-party modules that we build and maintain. A list of these modules is available on our Technical Specifications page. Support coverage may be limited to one hour per query and referred to NGINX Professional Services if necessary.
Custom or third party modules that are not listed on our Technical Specifications page are not covered by support. We may ask for the module to be disabled before providing support.
For Enterprise support customers, NGINX guarantees an SLA of 30 minutes for the initial contact in new support queries. We will offer service credits in the event that we fail to meet this expectation. Please contact us to learn more.
Our support covers debugging and troubleshooting problems you have installing or operating your NGINX Plus deployment. This includes:
- Setting up access to the NGINX Plus repository
- Installing the NGINX Plus software
- Detailed configuration guidance for all NGINX Plus features
- Debugging and troubleshooting
- Installation of 3rd party dynamic modules
- Full analysis and recommendations in the event you encounter a possible fault or bug
- Hot fixes for software bugs outside of the regular release cycle (Professional and Enterprise only)
- Early notification of essential security updates
Our support does not cover:
- Configuration or troubleshooting of 3rd party dynamic modules
- Hands-on performance tuning or configuration
- Troubleshooting OS, database, or backend application issues
The developer license allows you long-term access to all features of NGINX Plus for your side projects and demos in non-production environments.
NGINX Plus includes exclusive features not available in NGINX Open Source and award-winning support. Exclusive features includes active health checks, session persistence, JWT authentication, and more.
See a full comparison of NGINX Plus vs. NGINX Open Source features.
The NGINX Plus developer license may be used by an individual developer for his or her personal use only. It is intended for private, single-user applications and services in non-shared, local environments.
NGINX offers separate non-production subscriptions for NGINX Plus instances used in shared, non-production applications and services, such as test or staging environments that are accessed by more than one user.
Yes, if you are you a developer who’s interested in using NGINX Plus for a non-production use case.
To obtain a developer license, attend an NGINX conference or meetup, where our speakers will be providing exclusive temporary passwords to a license-request form. We are making limited exceptions to this policy, so if you don’t have such a password, email our community relations team with the following information:
- How you heard about the developer license program
- A brief description of the project in which you plan to use NGINX Plus, and the role it will play (web server, reverse proxy, load balancer, etc.)
Once you’ve received your welcome email, please follow the login instructions. After you’ve logged in and retrieved the necessary access keys, follow the installation instructions in the NGINX Plus Admin Guide. (You’ll see this link again in the welcome email.)
NGINX Plus is the commercial offering, with expanded features developed for the enterprise. As someone familiar with NGINX, you’ll be able to hit the ground running and delve into new features like advanced load balancing, configuration and cache management APIs, session persistence, and application-aware health checks, to name a few.
Installing NGINX Plus could change the behavior of your NGINX server if you are using any third-party modules compiled from source, because NGINX Plus is distributed as a binary with a predetermined set of modules built in (NGINX Plus Technical Specifications lists them). We recommend checking for any feature differences between your current version of NGINX and the current NGINX Plus version before upgrading.
The way you perform the NGINX Plus installation depends on your current deployment. We recommend that before any NGINX or NGINX Plus upgrade, you always back up your existing NGINX configuration files.
- If you used
yumpackage manager to install open source NGINX, run the
yum swapcommand to remove it and install NGINX Plus. Using the package manager will provide you with a live binary upgrade to NGINX Plus.
- If you used the
apt-getpackage manager to install open source NGINX, simply run the
apt-get installcommand to install NGINX Plus.
- If you installed open source NGINX from source, you need to stop the NGINX service manually, remove the existing NGINX binary from your system, and then use your operating system’s package manager to install NGINX Plus.
NGINX developer licenses are not supported. If you have any problems installing your developer software and keys, or you cannot find the documentation you’re looking for, contact the Developer Relations team at [email protected] and we will be happy to help. For technical questions, please check out the NGINX Plus Admin Guide and the NGINX Plus Reference Guide, and the community documentation at https://www.nginx.com/resources/more/.
If you need support for a particular project, please start a full evaluation and our pre-sales team will assist.