Skip to main content
TrustRadius
NGINX

NGINX

Overview

What is NGINX?

NGINX, a business unit of F5 Networks, powers over 65% of the world's busiest websites and web applications. NGINX started out as an open source web server and reverse proxy, built to be faster and more efficient than Apache. Over…

Read more
Recent Reviews

NGINX Review

10 out of 10
March 22, 2024
Incentivized
Using NGINX for some Reverse Proxy services for security purposes. Helps to mask the IP address of our true IP Address. Looking to see …
Continue reading

great

8 out of 10
March 22, 2024
Incentivized
Apache web server has replaced by NGINX server. could see potential benefits by using this product instead of apache. Infact its quite …
Continue reading

NGINX Review

9 out of 10
September 15, 2023
Incentivized
We use it as the ATTP server and it is one of the very popular ATTP servers on the market. It's free and it has really good speed compared …
Continue reading

NGINX Review

9 out of 10
September 15, 2023
Incentivized
I use it for mostly host websites or anything that needs to be host. So we have our on-prem server where we host ourselves.
Continue reading

NGINX Review

9 out of 10
September 15, 2023
Incentivized
So we use it in our app development. We use NGINX servers for deploying our apps. We don't have any challenges so far. We are pretty much …
Continue reading
Read all reviews

Awards

Products that are considered exceptional by their customers based on a variety of criteria win TrustRadius awards. Learn more about the types of TrustRadius awards to make the best purchase decision. More about TrustRadius Awards

Popular Features

View all 6 features
  • Installation (18)
    9.4
    94%
  • Application server performance (18)
    8.6
    86%
  • Administration and management (18)
    8.0
    80%
  • Security management (18)
    8.0
    80%

Reviewer Pros & Cons

View all pros & cons
Return to navigation

Pricing

View all pricing
N/A
Unavailable

What is NGINX?

NGINX, a business unit of F5 Networks, powers over 65% of the world's busiest websites and web applications. NGINX started out as an open source web server and reverse proxy, built to be faster and more efficient than Apache. Over the years, NGINX has built a suite of infrastructure software…

Entry-level set up fee?

  • Setup fee optional
For the latest information on pricing, visithttps://www.nginx.com/products/pricing

Offerings

  • Free Trial
  • Free/Freemium Version
  • Premium Consulting/Integration Services

Would you like us to let the vendor know that you want pricing?

25 people also want pricing

Alternatives Pricing

What is Zend Server?

Zend Server, developed by Zend, acquired by Rogue Wave Software in 2017 and then by Perforce in 2019 with that company's acquisition of Rogue Wave, is an All-in-One PHP Application Server that aims to improve web app deployment, debugging, and monitoring. Additionally, ZendPHP Enterprise offers…

Return to navigation

Product Demos

CVE-2016-1247 Nginx (Debian-based) Vulnerability - Root Priv. Escalation PoC Exploit Demo

YouTube

Nginx Web Server configuration with Examples

YouTube

Load Balancing with NGINX

YouTube

Access your internal websites! Nginx Reverse Proxy in Home Assistant.

YouTube

How to Serve Static Content

YouTube

Using NGINX Open Source for Video Streaming and Storage

YouTube
Return to navigation

Features

Application Servers

An Application Server provides services and infrastructure for developing, deploying, and running applications

8.2
Avg 8.0
Return to navigation

Product Details

What is NGINX?

NGINX, a business unit of F5 Networks, powers over 65% of the world's busiest websites and web applications. NGINX started out as an open source web server and reverse proxy, built to be faster and more efficient than Apache. Over the years, NGINX has built a suite of infrastructure software products o tackle some of the biggest challenges in managing high-transaction applications.

NGINX offers a suite of products to form the core of what organizations need to create applications with performance, reliability, security, and scale. This includes NGINX Plus for load balancing, reverse proxy, and application delivery controller features, NGINX App Protect for high performance web application firewall security, and NGINX Unit to run the application code, all monitored and managed by the NGINX Controller.
  • NGINX Plus: An all‑in‑one load balancer, web server, and content cache.
  • NGINX Controller: Centralized monitoring and management for NGINX Plus.
  • NGINX App Protect: Web application firewall, powered by F5
  • NGINX Unit: Lightweight application server, with support for multiple languages and a dynamic REST API‑driven configuration
  • NGINX Ingress Controller: Traffic management solution for cloud‑native apps in Kubernetes and containerized environments.
  • NGINX Service Mesh: Lightweight, Turnkey, Developer-Friendly Service Mesh Using NGINX Plus as an Enterprise Sidecar

NGINX Features

Application Servers Features

  • Supported: IDE support
  • Supported: Security management
  • Supported: Administration and management
  • Supported: Application server performance
  • Supported: Installation
  • Supported: Open-source standards compliance

Additional Features

  • Supported: NGINX: Fast, light web server and reverse proxy
  • Supported: NGINX Plus: All‑in‑one Load Balancer, Web Server, and Content Cache
  • Supported: NGINX Plus: Security controls, High Availability, Dynamic Modules
  • Supported: NGINX App Protect: Layer 7 Attack Protection
  • Supported: NGINX Controller: Centralized Traffic Management and Monitoring
  • Supported: NGINX Controller: Role-based Access Controls
  • Supported: NGINX Unit: Multi-language Application Server

NGINX Screenshots

Screenshot of Overview of the NGINX Application PlatformScreenshot of NGINX Controller - MonitoringScreenshot of NGINX Controller - Configuration

NGINX Technical Details

Operating SystemsUnspecified
Mobile ApplicationNo

Frequently Asked Questions

Microsoft IIS and HAProxy Community Edition are common alternatives for NGINX.

Reviewers rate Installation highest, with a score of 9.4.

The most common users of NGINX are from Small Businesses (1-50 employees).

NGINX Customer Size Distribution

Consumers0%
Small Businesses (1-50 employees)0%
Mid-Size Companies (51-500 employees)50%
Enterprises (more than 500 employees)50%
Return to navigation

Comparisons

View all alternatives
Return to navigation

Reviews and Ratings

(137)

Attribute Ratings

Reviews

(1-25 of 27)
Companies can't remove reviews or game the system. Here's why
March 22, 2024

NGINX Review

Score 10 out of 10
Vetted Review
Verified User
Incentivized
Using NGINX for some Reverse Proxy services for security purposes. Helps to mask the IP address of our true IP Address. Looking to see what more we can do with NGINX like its load balancing function and web functions.

Moreover, with the new release of NGINX One. Could see what suits our needs
  • Easy to configure
  • Easy to install
  • Not complex
  • Ridiculously easy
  • A lot of users therefore alotnof guides online
  • More functions for windows
  • Maybe could add replication or sync to the reverse proxy
NGINX is good for load balancing and in scenarios where u require a reverse proxy for security
March 22, 2024

NGINX review

Score 7 out of 10
Vetted Review
Verified User
Incentivized
We use it mainly as an API Gateway Load Balancer
  • Load balancing
  • Can be quite inflexible at times
When delivering a website and you require security and protection for your Kubernetes clusters or API gateways.
March 22, 2024

Recommended product

Score 7 out of 10
Vetted Review
Verified User
Incentivized
Load balancing of the mobile trading application. The. Challenge is skill. To manage the appliance
  • Open source
  • Rich of feature
  • Stability
  • Web gui interface
  • Users familiar
  • Ease of management
Very suitable for web load balacing
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We use the NGINX forward proxy manager to manage a few sites coming into the network. all websites with different domains.
  • reading TCP headers for forwarding
  • forwarding traffic flawlessly
  • Let's Encrypt compatibility
  • add load balancer into basic proxy manager
  • better initial SSL documentation
So far for me it's been great for forwarding https and http traffic to different servers behind the firewall. I still use apache as the web service at the end, but nginx as a forward proxy for us has been great.
Score 10 out of 10
Vetted Review
Verified User
Incentivized
We use nginx as a reverse proxy for web traffic for security reasons. We have also used it as an http cache.
  • Good reverse proxy
  • Load balancer
  • Http cache
  • Provide recommendations for improving performance
  • Provide flags on misconfigurations
Nginx does well as a reverse proxy and not as well as a load balancer compared to other load balancer
April 27, 2023

NGINX simple review

Score 9 out of 10
Vetted Review
Verified User
Incentivized
We used it to allow our internal applications to be accessed by the Internet, this allows the application to be securely accessed through public networks since we secure the https access through public certificated issued by our organization. It simplifies the management of apps published to the Internet.
  • Secure application access.
  • Easy to implement.
  • OS flexibility.
  • Configuration management
  • Automatic updates
Well served as a proxy reverse, we implemented in our environment to secure access by not exposing the app server directly to the Internet. As the product is really oriented, I don't see where it could be less oriented for. I think is well suited for load balancing the application access through proxy reverse, but this feature I haven't tested yet.
Score 9 out of 10
Vetted Review
Verified User
Incentivized
Most of our applications are container based and load balanced. Having multiple servers in the backend is challenging and using an external load balancer makes you lose control of the mechanics. That is where NGINX comes into picture. We create config files on our EC2 instances and control how the load balancer functions via NGINX
  • Load balancer
  • Load sharing
  • Web server
  • Reverse Proxy
  • Community support is limited
Well suited for web server hosting, load balancing, using reverse proxy to point to an alias. I don't think we can leverage it fully on windows
Score 9 out of 10
Vetted Review
Verified User
Incentivized
We currently use NGINX for a high-powered highly configurable web server. The ability to protect and reduce the attack surface area of our primary webservers was our primary need. NGINX was chosen to meet internal demands for a highly flexible webserver that can have multiple nodes and redirect/proxy traffic to protected servers.
  • Allows for multiple domain names.
  • Can be created as a proxy that forwards traffic to back-end servers.
  • Allows for SSL offloading and protection.
  • Allows for Load balancing between multiple back-end servers.
  • Currently, there isn't a GUI interface which is both a good thing (for reduced footprint) and a perceived bad thing if console familiar users are not available.
The best scenario for NGINX is when you need to create a front-end proxy that can handle several different domain names, certificates, and configurations. Each of these configurations can be built out in a single server pointing to multiple back-end servers and services. NGINX may be less suited if you have a very simple one server/one domain setup that doesn't need a lot of customization and configuration.
Josh Stapp | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
Many [NGINX] servers are used across the organization to load balance and serve content before hitting our nodejs express rest api backends or our node react express frontends. It helps maintain uptime when we encounter strange deployment errors that can take out one of our servers. In my experience is has provided amazing throughput with very little configuration.
  • Performance
  • Reliability
  • Low configuration
  • Rarely used in development
  • Difficult to tell if it changed values from a server behind it
[NGINX] is very well suited for high performance. I have seen it used on servers with 1k current connections with no issues. Despite seeing it used in many environments I've never seen software developers use it over apache, express, IIS in local dev environments so it may be more difficult to setup. I've also seen it used to load balance again without issues.
John Reeve | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
We have used NGINX in several different ways. We've used it as a load balancer, a proxy server, and a web server. Its ability to do one or all three of these jobs is what makes it so useful.
  • Load balancing.
  • Proxy server.
  • Config files aren't as straightforward as Apache.
NGINX is extremely fast when used as a web server. We used it for many years to serve up static content such as images, css, html, and javascript. The proxy features are also great for routing traffic through it when needed.
January 28, 2020

NGINX Review

Score 8 out of 10
Vetted Review
Verified User
Incentivized
I use NGINX for two main purposes. The first and foremost is to serve as a reverse proxy to rails applications running on their own servers. This includes making use of gzipping and SSL/TLS encryption. Additionally, it is used to serve compiled react applications as static sites, with the other instance still serving as a reverse proxy to these.
  • SSL/TLS encryption - Incredibly simple to configure and use.
  • Gzipping - Quickly and easily compress responses to save network cycles.
  • Lack of logging tools - Simply writes logs to files that you have to manually navigate.
  • No GUI - All configuration from a console. This could be a pro or a con to some.
If you want to serve a static website, implement a reverse proxy server to in-house applications running on their own servers, enable SSL/TLS encryption for your sites, load balance between application instances, or simply cut down the size of your server's responses by gzipping them, then Nginx is for you. If you feel that you need a GUI to do any of these things, then potentially look elsewhere.
Score 9 out of 10
Vetted Review
Verified User
Incentivized
Nginx is widely used in the whole organization for different applications as a front end hitting web server. It's used generally to benefit the caching mechanism and load the balance of the clustered applications and also used widely to maintain an active environment in case of any node failure or application server failure.
  • Nginx provides a very good caching mechanism as compared to other web servers. It helps to increase the performance of application when users hit the same address again and again in short period of time. This caching mechanism has many options available and it helps to configure it any way.
  • Nginx is a light weight web server which forwards the requests from the user to application server. If we host multiple sites on same Nginx server, the load of the server doesn't increase.
  • Nginx rewrite rules bring more flexibility to configure permanent or temporary redirections for some of the URLs
  • Nginx works best when we use it as front end proxy server for any application
  • Nginx is best in managing the Production and DR environments in an active mode. It is applicable for some of the applications when local file systems are shared across servers.
  • Load balancing is the thing where Nginx needs more improvement when I compare it with HAProxy. HAProxy provides more flexibility than Nginx for load balancing for clustered applications.
  • Nginx monitoring is good but not best. Teams have to improve the monitoring of Nginx where we can easily track the ddos attacks or multiple connections from one IP or multiple requests coming from one IP then they need to block it etc. i.e. Nginx must provide more flexibility in configuring more scenarios, which we do manually to improve the application performance.
  • Nginx needs improvement in the logging mechanism. Nginx must provide their own commands to get the desired output from the logs. So that instead of using unix commands and grep particular things, if Nginx provides better commands which can easily trace the logs in desired way, it will bring more flexibility to the system administrator.
Nginx is best to use as front end proxy for any application server. Nginx's cache mechanism is one of the best as compared to other web servers. Nginx is really a light weight webserver and it provides more flexibility in case of load balancing in clustered application. Configuration of Nginx is very easy as compared to other web servers. Nginx uses fewer resources of hosted server.
Leonel Quinteros | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
Nginx is present at different levels across my projects. Sometimes is just a Web Server, others a Load Balancer or an API proxy with SSL/TLS management, it's just great that's so lightweight that you can deploy as many instances as you want, for different purposes and create a services mesh inside your organization's network.
  • Low memory footprint, high performance, low maintenance.
  • Modular, configurable, flexible. You can create totally different nodes from the same Nginx version. I.e. you can use 1 instance to run a Web Server and another to run a gRPC rate limiter.
  • Nginx Plus suite is awesome! and has really nice features for high end users as well. It complements really well with the core, open source products.
  • Great ecosystem for API and Microservices management and governance
  • Excellent Web Server, of course!
  • Some parts or modules form Nginx Plus suite would be really useful in the Open Source world. But it's just about paying the fee or implement it yourself though.
  • No .htaccess support (https://www.nginx.com/resources/wiki/start/topics/examples/likeapache-htaccess/)
  • Low diversity and extension of modules.
When deploying API services, we need to take care of many aspects of the network where they work. Infrastructure is also a factor when limited, so you also need to limit and manage it according to its use. Nginx is great to construct these network nodes (HTTP, API Proxy) that connects everything and can add extra capabilities like security (ModSecurity, SSL/TLS) and availability (Load Balancer, Rate Limit).

Gregory Pecqueur | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
We use Nginx as a load balancer and as a reverse proxy for all of our web services. We use it to serve NodeJs applications, REST APIs and Angular front.
  • Great community
  • A lot of documentation available
  • High-performing
  • Easy to configure
  • Cache static assets
  • Multi-threaded support
  • A user-friendly UI console to test some configurations in a test server
Nginx is a very good web server and proxy. To serve NodeJs applications, Nginx + pm2 is very efficient. Coupled with Passenger, it allows MEAN Stacks applications to be deployed very easily.
Rahul Dhangar | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Nginx is an excellent choice for any size company, be it a startup or mid to large scale. iI delivers a well-supported server architecture without much fuss involved. I loved the customer support I received whenever I sought help for several different client projects. Nginx is a great choice for use with AWS EC2 instances as well as I've personally used and configured it without any bottleneck. So I can say that it is a good choice for AWS and similar cloud hosting solutions.
  • Reliable load balancing capabilities
  • Caching of static assets is great
  • SSL handling is good
  • Relatively simple configurable proxy solution
  • Open source hence accessibility is easy to larger audience
  • Nginx plus is a bit on higher end on pricing for small organisations
  • Automatic Nginx configuration & services update for open source version is something which would be a welcoming step. Currently everything needs to be done manually
  • Web GUI console could be a slight better and some configurations from there itself would be highly appreciated
It is well suited for creating your custom CDN without much payload on the server and a proxy solution is also very effective using Nginx. Great for websites having high traffic demands but could be a bit heavy for smaller projects where traffic is low. Overall effectiveness of the Nginx solution is great when compared to competitive solutions provided by Apache Server.
February 08, 2019

Fast and configurable

Shea Bunge | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
Ever since discovering Nginx as an alternative to Apache, it has been my web server of choice for a variety of purposes, whether it be creating a versatile development server accommodating a variety of platforms across many different sites, or setting up a high-speed scalable server with integration with a popular content management system for a client. The powerful yet flexible configuration options of Nginx makes it straightforward to configure a server for a multitude of different tasks, and a clear choice for almost any situation.
  • Powerful and flexible configuration
  • Low resource usage with low overhead
  • Well-supported on major operating systems
  • Less well-known in communities than Apache, making it more difficult to find documentation and support
  • Requires manual configuration for integration with some popular CMS
Nginx is well suited for many different sorts of websites, whether they be for serving static content or making use of a back-end scripting language. As Nginx is not as well supported as some alternatives, support for integration with some software platforms may be lacking and require manual configuration. For this reason, Nginx may be a little more difficult to use for those unfamiliar with server administration.
Gabriel Samaroo | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
We use Nginx to serve static content for a few of our applications. Nginx is very effective for us because it's free, scales very well, and can handle millions of requests a second. It has made several of our websites noticeably faster. In addition, its ability to act as a Proxy/Reverse Proxy has been instrumental in fulfilling our specific web hosting needs.
  • Very low memory usage. Can handle many more connections than alternatives (like Apache HTTPD) due to low overhead. (event-based architecture).
  • Great at serving static content.
  • Scales very well. Easy to host multiple Nginx servers to promote high availability.
  • Open-Source (no cost)!
  • Less community support compared to Apache
  • Less extensive list of modules compared to Apache
Nginx is well suited for serving any static content - whether that be images, JS files, HTML files, CSS files, videos, etc. If you have a high-traffic website, Nginx will be a great fit because it handles large number of requests extremely efficiently. Nginx has full support on Unix systems, but only has limited support on Microsoft Windows machines.
L Matthew Blancett | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
We use Nginx widely as our primary way of proxying and SSL termination. Specifically, our highly-available architecture used for both a bidding environment and serving ads are designed with Nginx. We have had success building out some applications with deeper Nginx integration as well, our own home-built CDN.
  • SSL handling
  • Configuration is very unique, and has a learning curve, but powerful and generally clear
  • Very active user groups
  • Decent customer support
  • Customer support can be strangely condescending, perhaps it's a language issue?
  • I find it a little weird how the release versions used for Nginx+ aren't the same as for open source version. It can be very confusing to determine the cross-compatibility of modules, etc., because of this.
  • It seems like some (most?) modules on their own site are ancient and no longer supported, so their documentation in this area needs work.
  • It's difficult to navigate between nginx.com commercial site and customer support. They need to be integrated together.
  • I'd love to see more work done on nginx+ monitoring without requiring logging every request. I understand that many statistics can only be derived from logs, but plenty should work without that. Logging is not an option in many environments.
Well Suited:
If you need simple SSL termination to another proxy
If you are proxying from internet to an app with a real web server built-in
If you are proxying from the internet to FastCGI

Not so hot for Python proxying, at least from what I've seen, compared to the competition, but I don't do much of that.
Ilya Popovich | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
We use Nginx as load balancing for our complex web applications and proxying requests to different applications across the company. It has a small footprint and memory usage, so it's the best choice solution for us.
  • Static assets caching
  • Extremely simply configurable proxy solution
  • Load balancing is awesome
  • The robustness is on the top
  • Steep learning curve: you'll spend lots of time to read all manuals and specs before you can configure it correctly
  • SSL handling is poor
For high-load projects it's a must-have solution, so I definitely would recommend to anyone.
Jhonattan Smith Peláez Nimisica | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
We use Nginx Plus Professional as a load balancer and as a reverse proxy with its ModSecurity component - WAF (Web Application Firewall). Nginx supports all the web traffic of the whole organization and some of our clients.
  • Nginx supports millions of requests per second
  • Nginx supports our high availability schemes
  • Nginx ensures that our information and resources are available and secure
  • The Nginx team has been very proactive when we need help, support and in the renew of licenses process
  • In five years we only have had 10 minutes of unavailability because of Nginx. However, Nginx support was very helpful for us.
Nginx is excellent working as a load balancer, reverse proxy - WAF (Web Application Firewall), Web server, and high availability and high performance scenarios.
Tyler Johnson | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
We use Nginx as the primary reverse proxy for all of our web services. We manage several dozen web applications, for many different clients, and Nginx allows us to quickly route requests to the correct service. Since we use Kubernetes to manage services, it is fast and simple for us to add new routes to our Nginx service. Nginx also manages our SSL, allowing us to deliver content securely.
  • Straight-forward configuration format that users of all skill levels can learn, and yet is powerful enough for the huge breadth of features that Nginx provides.
  • Massive scale right out the box. We've never had a Nginx instance overwhelmed by requests, and if we did it would be trivial to spin up more Nginx instances to handle the load.
  • SSL termination means that we can deliver content over HTTPS without needing our individual services to require TLS support. This saves us a lot of time and headache while keeping us secure.
  • Nginx is open-source and free, meaning that anyone can use it to power their services, from individual projects to billion-dollar websites.
  • The open-source flavor of Nginx does not support automatic service discovery. In the time of Docker containers, Kubernetes and other managed cloud services, it can be difficult to manually update Nginx configurations as services change.
  • Nginx is quite heavy for smaller projects and low-traffic scenarios. It requires knowledge of operating and configuring, which is separate from operating the main web server. There are managed alternatives that will get web services up faster and be more reliable.
  • Nginx-plus has some very valuable tools that projects of any size could take advantage of. Unfortunately, it is very expensive as it includes SLA and support, putting it out of reach of all but the most well-funded projects.
Nginx is a fantastic service for managing several web services together under the same platform. Between SSL termination and basic reverse proxy, you can maintain a single static IP address and host several services and domains. Nginx will route to all the services with ease and you can keep costs lower by sharing server infrastructure. Nginx is also great for high-impact web services. We have several services that during peak hours will see several thousand requests every second. Nginx never breaks a sweat and is one of the most reliable parts of our stack under load.

Nginx is less appropriate for small projects as it takes time to configure and operate successfully. If you looking to get a small web service up quickly and securely, it is often better to go with one of the managed cloud services available.
Score 10 out of 10
Vetted Review
Verified User
Incentivized
Nginx is powering the serving of web content across our entire organization. We used to host over a hundred web servers with Rackspace Cloud all with nginx sitting in front of backend server processes. Now, we host the majority of our sites on Pantheon, who also utilize nginx in their app server layer. We also host a number of custom servers on AWS EC2 which serve web content over nginx. It allows us to squeeze more performance from our web servers much more easily than using Apache.
  • Nginx is typically blazing fast. It's hard for other web servers to touch it in terms of raw speed and efficiency.
  • Nginx has a simple and intuitive configuration language which is easier for me to keep in my head than the more verbose Apache syntax.
  • Nginx is very powerful as a web server, offering the ability to utilize many of the same features as Apache, sometimes in even better ways.
  • Nginx works great as a reverse proxy, too! It can sit in front of a separate server, or even a cluster of servers, and intelligently handle serving requests to and responses from those servers, including a highly-configurable caching layer.
  • Nginx often requires some initial configuration. It's worth doing, because you'll end up with great results, but it can be slightly daunting for someone to get started using it. Apache might have a leg up in that regard--When you install Apache, typically it's just about ready to do what you want already. But the issue with Apache is that most people skip the extensive tuning phase required after that, and with nginx it becomes more just a part of the configuration process.
  • Sometimes, the configuration syntax, even though it's powerful and terse, isn't the most intuitive. Luckily there's plenty of documentation about what things mean and how to accomplish certain things. There may not be much that can be done about this--to have a powerful web server, you need a powerful-enough configuration language.
  • The nginx brand is somewhat fragmented, and it can be confusing. There's the open source nginx web server, which I've primarily been referring to. But then there's NGINX Plus, a premium subscription-based service which works with a range of other NGINX products (NGINX WAF, NGINX Amplify, NGINX Controller). I've met a number of people who weren't very familiar with nginx, and instinctively went to nginx.com first, and from there it seems like everything costs money. It's only when they realize there's a different site, nginx.org, that they find what they went looking for.
More often than not, if someone is looking to me for a web server recommendation, I'm going to recommend nginx. If your needs are within the 90+% majority of web server needs I've encountered out there, then in many cases nginx makes for a wonderful solution. Certain software, however, was designed to work with Apache and .htaccess files and may take substantially more effort to "convert" over to work with Nginx. In those cases, it might make sense to stay with Apache or with something else that is compatible with Apache's .htaccess files.
Jonah Dempcy | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
I have used Nginx for years to serve Ruby on Rails applications for a number of clients and with various integrations including Passenger and, more recently, Unicorn. I have found Nginx to be a wonderful choice for both standalone server and layer in front of Unicorn. Nginx excels at serving static files, load-balancing, security (preventing certain exploit attempts) and simply acting as a front end for full-featured application server back-ends.
  • Nginx excels at serving static assets (images, cached files).
  • Nginx is fantastic for load-balancing and routing requests to back-end application servers.
  • Nginx is built for scaling and is an excellent solution for high-traffic websites.
  • Nginx has good features for protecting against certain security exploits.
  • Nginx has some peculiarities or "gotchas" that take getting used to.
  • Nginx could improve at SSL handling.
  • Nginx is the best asynchronous server but I could see using Apache for process-based (threaded) serving of dynamic assets as a back-end behind Nginx. So I don't think Nginx should necessarily improve in this regard as much as it's choosing the right tool for the job—Nginx for static serving, other, process-based servers for dynamic serving.
Nginx is perfect as a front layer handling all inbound requests to a website. I would use it just about anywhere as a first line of defense against client requests for its load-balancing, security features and ability to rapidly serve static assets. Nginx is great for websites of all sizes although it is especially helpful for websites getting very high traffic.
Anand Chhatpar | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
Nginx is used as the main web server and load balancer in front of our Rails apps. We use Nginx + Passenger together as part of our stack for production deployments of our Rails apps.

We currently have 5 different deployments of Nginx, and everyone in the company that deploys production apps uses them.

The main business problem addressed by Nginx was definitely speed and load balancing. Before using Nginx + Passenger, we had Apache servers in front of Mongrel for our rails apps, and they not only were slow and memory intensive, the only load balancing strategy available with that setup was round-robin allocation of incoming web requests to different app servers. With Nginx, it acts as a load balancing proxy as well and keeps track of which app servers are free to receive new requests. This resolves bottlenecks in our server's performance.
  • Nginx works really well for serving static files. You can let requests for static files and assets pass directly through to the file system and Nginx will serve them really fast, without touching your web app processes.
  • Nginx does a great job with load balancing. You can set up different load balancing strategies, but the default load balancer it comes with out of the box works very well already -- better than any round-robin approach because it checks for availability of the resource before handing off the incoming request.
  • Nginx is more memory efficient and generally faster than Apache. It has a small footprint, which can be very helpful, especially if you're running on a VPS.
  • Nginx has not crashed on me even once. The robustness of Nginx overall is very impressive.
  • You can apply configuration changes to Nginx without needing to restart the server. You can also do reloads of the config without dropping any web requests because Nginx provides a global queue where requests can be held while it reloads the config.
  • There's no configuration wizard. I had to read their docs every time I make a change to the Nginx config files.
  • Deploying rails apps with Nginx + Passenger requires a recompilation of Nginx. It would have been better if Nginx supported a plugin system that would allow you to plug in some rails app servers into it.
  • There's no easy way to tell which incoming request was sent to which back-end app server. You have to do advanced tricks to keep track of those things, in case you need to see what's happening behind the scenes for debugging.
Nginx is great as a web server. For serving Rails apps, Nginx + Puma seems to have become the norm, but has memory leakage issues because of Puma. Nginx itself is quite robust and we find Nginx + Passenger as the right production-ready setup for deploying Ruby on Rails apps. I cannot think of any specific scenarios where I would recommend against using Nginx.
Return to navigation