Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

For a website I'm developing all my static content is hosted offsite on a combination of S3/Cloudfront. I've been looking over a lot of tutorials for deploying a Django app into production and a lot of them recommend a combination of Nginx (reverse proxy) + Apache. This is stated under the assumption that Ngnix will be used for serving static contents and Apache will do all the heavy lifting. Are there any other reasons to have a reverse proxy when I don't have any static contents to serve? Or in this case could I simplify my server setup and just use Apache?

share|improve this question
up vote 2 down vote accepted

Nginx will help in your use case as well. Generally, like any reverse proxy, it helps to utilize server resources more optimally with two major techniques:

  1. As you correctly pointed out, it serves static content, thus freeing a heavy-weight web server from doing this.
  2. But it also solves the problem of "slow clients", i.e. those clients who use slow connections (dial-up or mobile). Since Apache generates a dynamic page pretty fast, Nginx gets it, stores to the temporary file and serves it to the client at the client's speed (much like it would serve a static content), freeing Apache to serve another request.
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.