nginx

139 engineers on Hacker News describe using nginx first-hand: 24 endorse it, 6 regret it, 3 are mixed.

75%trust
139first-hand users
121in production
endorse 24mixed 3regret 6uses, no opinion

“Up until the last couple of years from early-ish 2012, I used nginx for production traffic in a lot of places.”

endorse · production · 12 yr · jon128 · 2026-10-27 · source ↗ · wrong label?

“It gave us way more control over connection lifecycles than NGINX.”

regret · production · nicolaslecomte · 2026-01-23 · source ↗ · wrong label?

“I've done this in production plenty of times. Under load, nginx is insanely efficient.”

endorse · production · josephg · 2025-12-17 · source ↗ · wrong label?

“nginx proxy on bean stalk not keeping up with our go service”

regret · production · grogenaut · 2024-06-16 · source ↗ · wrong label?

“NGINX is not perfect in those aspects either, but it is a bit more robust and well-documented at least.”

mixed · production · timcambrant · 2024-05-06 · source ↗ · wrong label?

“after a few weeks, we migrated back to NGINX.”

endorse · production · supz_k · 2023-09-12 · source ↗ · wrong label?

“We are happy that we moved away from nginx.”

regret · production · totallyunknown · 2022-09-14 · source ↗ · wrong label?

“Any Lua or C you write has be contorted to fit Nginx's multi-stage request/response architecture. ... a proxy library would have given us the freedom”

regret · production · cakoose · 2022-02-20 · source ↗ · wrong label?

“each nginx `reload` will double the number of workers, almost doubling memory consumption and significantly increasing CPU usage”

mixed · production · SaveTheRbtz · 2020-07-31 · source ↗ · wrong label?

“We replaced NGINX with HAProxy and eliminated a whole class of bugs, micro-outages, and annoyances... I still use NGINX when I need a static web file server, though.”

mixed · production · lukeqsee · 2020-07-12 · source ↗ · wrong label?

“now we use nginx as ibgress, becuase we can run the excellent lua-waf module.”

endorse · production · thawkins · 2019-09-21 · source ↗ · wrong label?

“That's why we switched to nginx as it is perfectly fine reloading configuration without dropping existing connections.”

endorse · production · jnsaff2 · 2017-05-03 · source ↗ · wrong label?

“This is a PaaS supporting many micro-services... beyond that nginx handles this without any sweat.”

endorse · production · jnsaff2 · 2017-04-27 · source ↗ · wrong label?

“We use nginx as a reverse proxy... overall it's worked out well now that it's up and running.”

endorse · production · Frondo · 2016-12-26 · source ↗ · wrong label?

“this freedom is what allowed us at my last job to create a patch for an internally required function in Nginx, in ten minutes.”

endorse · production · pritambaral · 2016-10-28 · source ↗ · wrong label?

“nginx is already maxing out my risk tolerance as it is, and I've begun a long, slow program to get it out of my stack too.”

regret · production · jerf · 2015-07-26 · source ↗ · wrong label?

“Nginx in effect becomes it's own cache SoA. We needed a special nginx module to make that work”

endorse · production · kyledrake · 2015-05-27 · source ↗ · wrong label?

“How to speed things up by using Nginx instead of APache - and tweak the hell out of it.”

endorse · production · 0.5 yr · gremlinsinc · 2014-01-14 · source ↗ · wrong label?

“I've been using nginx for a very long time and started when their docs were in russian and hardly translated into english”

endorse · production · adambenayoun · 2013-12-16 · source ↗ · wrong label?

“Basically Nginx is used as a reverse proxy to serve requests from a pool of Node.js processes”

endorse · production · NathanKP · 2013-10-14 · source ↗ · wrong label?

“I'm using Ngnix+LuaJit to get even more performance out of the same server hardware than Node.JS can provide”

endorse · production · SomeCallMeTim · 2013-10-07 · source ↗ · wrong label?

“We moved to Nginx with an external php-fpm for PHP, and just 4 Nginx instances take up the entire load”

endorse · production · rehack · 2013-09-07 · source ↗ · wrong label?

“configuration and deployment became much simpler since we moved to Nginx.”

endorse · production · eksith · 2013-09-06 · source ↗ · wrong label?

“Yes, we use it in production. However our requirements are for the logging enhancements rather than the dynamic modules. In our experience it's every bit as reliable as mainline nginx.”

endorse · production · ra · 2012-11-13 · source ↗ · wrong label?

“recompiling nginx everytime you need a custom module quickly loses its charm.”

regret · personal · mercurial · 2012-11-13 · source ↗ · wrong label?

“we can serve a sudden influx of unauthenticated users (e.g. from Google News or StumbleUpon) from nginx alone, which gives us massive scale from very little hardware.”

endorse · production · ben_h · 2012-09-15 · source ↗ · wrong label?

“The great thing about uWSGI/Nginx over Gunicorn/Nginx is that Nginx speaks the uwsi protocol natively”

endorse · production · rlander · 2012-05-16 · source ↗ · wrong label?

“we run nginx as a cache and the vast majority of our content is served directly from it ( almost 80% of page loads are served via cache )”

endorse · production · DanBlake · 2012-02-03 · source ↗ · wrong label?

“Nginx is a very light process, it's easy to setup and can withstand an HN-effect on only a small instance.”

endorse · personal · bad_user · 2011-10-08 · source ↗ · wrong label?

“I've been using LuaJIT embedded in Nginx (LuaNginxModule).”

endorse · production · SomeCallMeTim · 2011-09-29 · source ↗ · wrong label?

“Now we run three sites, one fairly popular, on a 512Mb Linode with Nginx, APC, FPM, Varnish and a CDN, and it can take an amazing amount of load.”

endorse · production · todsul · 2011-09-01 · source ↗ · wrong label?

“I've been touting nginx to anyone who will listen here and elsewhere for 2+ years. It just never breaks.”

endorse · production · 2 yr · jbyers · 2010-02-24 · source ↗ · wrong label?

“We've been using nginx at engine yard for 4 years now and I can say that it is the most solid peice of software out of the hundreds of open source componenets we run.”

endorse · production · 4 yr · ezmobius · 2010-02-24 · source ↗ · wrong label?

“Right now I do just actually use docker compose behind nginx in prod”

neutral · personal · steezeburger · 2026-10-16 · source ↗ · wrong label?

“there are reasons why we use Nginx in front of it. Distribution, filtering, rate limiting, etc..”

neutral · production · Aldipower · 2026-10-13 · source ↗ · wrong label?

“there was overall no impact to Nginx as we use the "deferred" socket option”

neutral · production · Bender · 2025-12-17 · source ↗ · wrong label?

“so we run static sites from nginx container.”

neutral · production · stackskipton · 2025-08-23 · source ↗ · wrong label?

“catalyzed us going back to nginx.”

neutral · production · engine_y · 2025-02-17 · source ↗ · wrong label?

“I also wrote my own arena allocator for a WASM project, and also wrapped Nginx's memory pool via safe APIs.”

neutral · personal · whytevuhuni · 2024-12-03 · source ↗ · wrong label?

“We run our games with a simple nginx server that simply serves the wasm.”

neutral · production · nightowl_games · 2024-07-26 · source ↗ · wrong label?

“I have moved to Traefik from NGINX aswell because of the built-in support for DNS challenge and wildcard cert.”

neutral · personal · ap-andersson · 2024-05-06 · source ↗ · wrong label?

“While I used NGINX in the past... We're moving back to NGINX.”

neutral · production · engine_y · 2024-05-05 · source ↗ · wrong label?

“a frontend (JS served by an nginx image), a middleware (RoR, C#, Rust), nginx ingress and cert-manager”

neutral · production · b7we5b7a · 2023-12-04 · source ↗ · wrong label?

“One in particular was a high performance nginx module.”

neutral · production · stusmall · 2023-11-23 · source ↗ · wrong label?

“The site is served statically via Nginx, with a log_format that doesn't use any PII in it.”

neutral · production · badlogic · 2023-10-17 · source ↗ · wrong label?

“I use Nginx as reverse proxy, and each service runs on the same internal port.”

neutral · production · ripperdoc · 2023-10-04 · source ↗ · wrong label?

“Compared to nginx and PHP-FPM installed on a host machine. All running opcache, JIT etc.”

neutral · production · Dachande663 · 2023-09-10 · source ↗ · wrong label?

“It was originally a nginx+lua service that we migrated to Haskell as the requirements became more complex.”

neutral · production · aviaviavi · 2023-03-17 · source ↗ · wrong label?

“Main rails containers, nginx, sidekiq and almost everything in ECS.”

neutral · production · efxhoy · 2022-08-01 · source ↗ · wrong label?

“have a single nginx listening on 80/443 that routes traffic to the sites by domain”

neutral · production · rudasn · 2021-12-31 · source ↗ · wrong label?

“A records at a $5 Linode box running nginx.”

neutral · personal · hughrr · 2021-12-29 · source ↗ · wrong label?

“One is completely SSG (served by nginx)”

neutral · production · freedomben · 2021-12-18 · source ↗ · wrong label?

“nginx ingress (I would probably go Contour+Envoy if I was to set it up now).”

neutral · personal · jpgvm · 2021-10-13 · source ↗ · wrong label?

“I actually think the nginx is pointless now that we're using envoy, so that'll probably go away soon.”

neutral · production · jhgg · 2021-08-16 · source ↗ · wrong label?

“We solved the problem with redis, nginx and the cheapest naked vps possible.”

neutral · production · BiteCode_dev · 2021-08-13 · source ↗ · wrong label?

“moved the complexity of something like dynamic reverse proxy via nginx downstream into kubernetes ingress abstraction”

neutral · production · rileytg · 2021-07-22 · source ↗ · wrong label?

“now I have logs in journalctl AND nginx, AND a bunch of other files”

neutral · personal · knorker · 2021-06-27 · source ↗ · wrong label?

“We ditched the the tls termination in nginx strategy, shifted to a nlb with tls termination in app.”

neutral · production · tasssko · 2021-03-18 · source ↗ · wrong label?

“when I configure nginx + a service, if it works in my local env, I have to run one command and I'll have the same in prod”

neutral · production · woile · 2021-01-31 · source ↗ · wrong label?

“It will then set up basic nginx blocks, install certbo and add a cron job if needed”

neutral · personal · AlchemistCamp · 2020-12-25 · source ↗ · wrong label?

“We now have a fully reproducible base EKS cluster deploy done with working cert-manager/letsencrypt, nginx ingress”

neutral · production · tthayer · 2020-12-22 · source ↗ · wrong label?

“a.o nginx and nodejs have no recent versions available; versions that we either need for features”

neutral · production · holstvoogd · 2020-12-10 · source ↗ · wrong label?

“At $WORK, we run a lot of 1000s of php servers with 10-20 processes each using nginx.”

neutral · production · charrondev · 2020-11-20 · source ↗ · wrong label?

“We use NGINX, not Traefik.”

neutral · production · zie · 2020-10-23 · source ↗ · wrong label?

“so we had to put Nginx ahead of Rocket.”

neutral · production · Erazal · 2020-09-18 · source ↗ · wrong label?

“including failing to reload nginx after renewing the cert”

neutral · personal · bscphil · 2020-09-10 · source ↗ · wrong label?

“Compared to NGINX though, it was relatively easy to push these fixes upstream.”

neutral · production · SaveTheRbtz · 2020-07-30 · source ↗ · wrong label?

“I just pass through nginx to HTTP locally, which is typically what I do in prod so the config isn't new to me”

neutral · production · 4lun · 2019-12-28 · source ↗ · wrong label?

“We've recently switched to a scheme where we run a Nginx reverse-proxy with LetsEncrypt. Everything is in docker containers.”

neutral · production · ansible · 2019-12-17 · source ↗ · wrong label?

“One of my team members figured out some edge case interactions between nodejs and nginx (used for HTTPS)”

neutral · production · specialist · 2019-12-13 · source ↗ · wrong label?

“we deployed a custom compiled nginx that responded with "204 B" instead of "204 No Content"”

neutral · production · iconara · 2019-12-13 · source ↗ · wrong label?

“a data flow architecture on top on nginx workers”

neutral · production · summarity · 2019-12-01 · source ↗ · wrong label?

“I actually had to append some text files to that were sent via email to get a valid thing that nginx actually understood”

neutral · production · jillesvangurp · 2019-08-13 · source ↗ · wrong label?

“We used to have one a long time ago when we fronted with nginx and I could just throw a static file up there”

neutral · production · jedberg · 2019-07-16 · source ↗ · wrong label?

“My previous employer embedded way too much Lua script inside Nginx plugins for the same reasons (it's easy).”

neutral · production · nullwasamistake · 2019-07-13 · source ↗ · wrong label?

“Windows Server 2016 behind IIS/kestrel/nginx and every other supporting tech on Linux”

neutral · production · majkinetor · 2019-05-06 · source ↗ · wrong label?

“This application server sits behind an Nginx proxy for a variety of annoying reasons”

neutral · production · bmurphy1976 · 2018-07-10 · source ↗ · wrong label?

“I just straight up blocked Google Bot w/ an nginx rule.”

neutral · production · tinix · 2018-05-08 · source ↗ · wrong label?

“managing the whole LAMP (well OpenBSD-Nginx-MP) thing behind it and whatnot”

neutral · personal · alxlaz · 2017-11-26 · source ↗ · wrong label?

“allow multiple bidders paring with nginx for load balancing”

neutral · production · vanilla-rtb · 2017-11-22 · source ↗ · wrong label?

“we run nginx and certbot in Docker too? It's just that we manually manage its configuration”

neutral · production · kosinus · 2017-11-21 · source ↗ · wrong label?

“we post from the client to nginx, nginx+lua timestamps and posts that to nsq”

neutral · production · mattbillenstein · 2017-10-04 · source ↗ · wrong label?

“We switched to OpenResty lately for our nginx bundle”

neutral · production · kyledrake · 2017-09-14 · source ↗ · wrong label?

“this issue, rare as it may be, could single-handedly get me back on nginx.”

neutral · production · scrollaway · 2017-05-19 · source ↗ · wrong label?

“The subdomain for the app (also the username) is then used by nginx to proxy it to the right upstream k8s service.”

neutral · production · tango12 · 2017-04-05 · source ↗ · wrong label?

“backend: Ninja framework behind nginx, because I can write Java in my sleep and it makes testing not-awful.”

neutral · production · ojiikun · 2016-12-26 · source ↗ · wrong label?

“our Nginx reverse proxy also has a cron job that runs letsencrypt automatic renewal once a week”

neutral · production · tzaman · 2016-12-20 · source ↗ · wrong label?

“I'm only using their JS Tracker to send requests to a pool of nginx servers.”

neutral · production · rhapsodyv · 2016-12-19 · source ↗ · wrong label?

“for nginx at least you don't even have to reload”

neutral · personal · ranger207 · 2016-12-19 · source ↗ · wrong label?

“These are mostly rails servers and nginx reverse proxy's.”

neutral · production · trcollinson · 2016-12-09 · source ↗ · wrong label?

“I proxy with nginx for IP rate limiting and node.js for failed password attempts rate limiting.”

neutral · production · hardcopy · 2016-12-05 · source ↗ · wrong label?

“Removed and installed latest nginx. In my opinion it's not prod-ready.”

neutral · production · romanovcode · 2016-10-17 · source ↗ · wrong label?

“Thankfully, we can easily switch back to nginx if we need to.”

neutral · production · scrollaway · 2016-10-16 · source ↗ · wrong label?

“I regret wasting so much time ... setting up ... nginx reverse proxy server-side rendering”

neutral · production · borplk · 2016-10-11 · source ↗ · wrong label?

“including writing a nixpkg for Nignx configuration and my application, all in about a day.”

neutral · production · jallmann · 2016-08-08 · source ↗ · wrong label?

“With Python behind uwsgi->nginx, we'd try to tune the number of uwsgi processes to cores”

neutral · production · themartorana · 2016-06-13 · source ↗ · wrong label?

“have been using openresty(nginx+lua) apart from lua inside openwrt environments.”

neutral · personal · tavish1 · 2015-07-11 · source ↗ · wrong label?

“I used it for two different problems... Classifying incoming requests based on various signals to detect DDOS patterns”

neutral · production · dividuum · 2015-07-10 · source ↗ · wrong label?

“The last site I worked on consisted of nginx, elasticsearch, logstash, kibana, postgresql, celery, redis”

neutral · production · markbnj · 2015-07-01 · source ↗ · wrong label?

“We run both nginx and unicorn through daemontools.”

neutral · production · scurvy · 2015-06-28 · source ↗ · wrong label?

“The front nginx play the role of "switch" between blue and green, and the database is shared”

neutral · production · allan_s · 2015-06-05 · source ↗ · wrong label?

“I think our installations of nginx[1], Python[2], pip[3], rust[4], mongo, consul[4], openldap[1], gcc[3] and several other things”

neutral · production · deathanatos · 2015-03-31 · source ↗ · wrong label?

“settings: deployment behind a nginx, ldap login for the users.”

neutral · production · jojoo · 2015-03-15 · source ↗ · wrong label?

“we have Hosty in production using nginx over SSL as well.”

neutral · production · xrstf · 2014-12-13 · source ↗ · wrong label?

“I find it a pain to install, configure and manage ruby and rails with nginx”

neutral · production · dholowiski · 2014-12-11 · source ↗ · wrong label?

“Deis uses common OSS tools such as nginx and ceph to provide our layer 0 and part of our layer 1 for us”

neutral · production · bacongobbler · 2014-11-11 · source ↗ · wrong label?

“We have an nginx image that uses a stock docker base, and it's over 400MB!”

neutral · production · vacri · 2014-11-11 · source ↗ · wrong label?

“We replaced that with nginx + lua (openresty module)”

neutral · production · rdrock · 2014-11-06 · source ↗ · wrong label?

“The account management and billing web app is Clojure + Postgres, proxied through nginx.”

neutral · production · pjlegato · 2014-11-04 · source ↗ · wrong label?

“Our server is nginx with Pedestal.”

neutral · production · 1 yr · ablancas · 2014-11-03 · source ↗ · wrong label?

“a whole bunch of ansible scripts to setup checks for postgres, nginx, etc.”

neutral · production · s0l1dsnak3123 · 2014-09-30 · source ↗ · wrong label?

“We have to wait for nginx to do various operations before control comes back to us.”

neutral · production · tdondich · 2014-05-26 · source ↗ · wrong label?

“so we can use the community version of nginx”

neutral · production · tomkinstinch · 2014-05-16 · source ↗ · wrong label?

“Your solution is tied to nginx/openresty. We try to limit our dependencies on the ngx.* interfaces as much as we can.”

neutral · production · otikik · 2014-04-26 · source ↗ · wrong label?

“We used Route53 latency based routing to route traffic to that dedicated servers + Nginx + LUA.”

neutral · production · hurrycane · 2014-03-05 · source ↗ · wrong label?

“Every bit of my existing nginx/fpm configs worked as is”

neutral · production · Jgrubb · 2013-12-20 · source ↗ · wrong label?

“Fairly recently we moved all processing of requests through CloudFlare to a Lua-based system inside Nginx.”

neutral · production · cloudflare · 2013-11-29 · source ↗ · wrong label?

“it serves a statically generated map over nginx”

neutral · personal · simfoo · 2013-11-19 · source ↗ · wrong label?

“We use linux for: redis, elasticsearch, HAProxy, DNS (bind), nginx, mail (exim) apache, wordpress, mysql, nexpose, backups, puppet, asterix, android builds and our internal mercurial.”

neutral · production · Nick-Craver · 2013-10-16 · source ↗ · wrong label?

“we aggregate the server access logs from each nginx instance and push them to an S3 bucket.”

neutral · production · sehrope · 2013-07-29 · source ↗ · wrong label?

“When we run servers, it's usually Flask and Nginx/uWSGI.”

neutral · production · jeremyjbowers · 2013-02-25 · source ↗ · wrong label?

“Having nginx push data directly into Redis is super fast, lends easily to real-time metrics”

neutral · production · decktech · 2012-12-09 · source ↗ · wrong label?

“We use Flask and nginx in various areas now (the main app is still Django).”

neutral · production · zeeg · 2012-11-22 · source ↗ · wrong label?

“The first iteration of our storefront was built using a 31 line chef recipe, rails, spree, nginx, unicorn, and postgresql.”

neutral · production · jsul · 2012-11-13 · source ↗ · wrong label?

“stand-alone Console hosts (which I host behind an nginx reverse proxy).”

neutral · production · mythz · 2012-10-22 · source ↗ · wrong label?

“we switched over to AWS (python, nginx/tornado, mongo) last year”

neutral · production · wrath · 2012-08-19 · source ↗ · wrong label?

“It did use more CPU than nginx, but not 100x as much.”

neutral · production · IsaacSchlueter · 2012-04-08 · source ↗ · wrong label?

“I have some apps deployed with nginx > uwsgi > django”

neutral · production · Codayus · 2011-11-23 · source ↗ · wrong label?

“Its a Fedora instance running passenger, nginx, and rails.”

neutral · personal · nckbz · 2011-10-23 · source ↗ · wrong label?

“The company I work for uses a newer stable version of nginx in production”

neutral · production · For_Iconoclasm · 2011-10-11 · source ↗ · wrong label?

“I just start gunicorn, point nginx at it, and I'm ready to go.”

neutral · production · gtaylor · 2011-07-19 · source ↗ · wrong label?

“0.7.65 is the version currently used in ubuntu lucid. We use it only as a proxy.”

neutral · production · spahl · 2010-12-23 · source ↗ · wrong label?

“Hosted on nodeJS hiding behind nginx.”

neutral · personal · gcr · 2010-11-30 · source ↗ · wrong label?

“We bypass Apache entirely and just plug Nginx FCGI into Django directly.”

neutral · production · adamcharnock · 2010-10-23 · source ↗ · wrong label?

“this is routed through Nginx with throttling on to simulate a slower external connection.”

neutral · production · thesunny · 2010-10-22 · source ↗ · wrong label?

“We switched from Apache to nginx and are now running in a full MySQL / python / fcgi / nginx / memcached environment.”

neutral · production · omarish · 2010-06-29 · source ↗ · wrong label?

“I've prepared simple proof-of-concept configuration for nginx”

neutral · personal · piotrSikora · 2010-06-05 · source ↗ · wrong label?

“We've done plenty of simulations, load tests, and lots of graphing that shows ngnix's performance gains are negligible given our hardware configuration.”

neutral · personal · netik · 2010-03-31 · source ↗ · wrong label?

“Apache webservers with nginx front-ends”

neutral · production · scorchin · 2010-02-05 · source ↗ · wrong label?