Nginx

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Nginx
Nginx logo.svg
Original author(s) Igor Sysoev
Developer(s) Nginx, Inc.
Initial release 6 August 2002; 11 years ago (2002-08-06)
Stable release 1.4.7 / 18 March 2014 (2014-03-18)[1]
Preview release 1.5.13 / 8 April 2014 (2014-04-08)[2]
Development status Active
Written in C[3]
Operating system Cross-platform[4]
Type Web server, reverse/mail proxy server
License 2-clause BSD[5]
Website nginx.org

Nginx (pronounced "engine-ex") is an open source reverse proxy server for HTTP, HTTPS, SMTP, POP3, and IMAP protocols, as well as a load balancer, HTTP cache, and a web server (origin server). The nginx project started with a strong focus on high concurrency, high performance and low memory usage. It is licensed under the 2-clause BSD-like license and it runs on Linux, BSD variants, Mac OS X, Solaris, AIX, HP-UX, as well as on other *nix flavors. It also has a proof of concept port for Microsoft Windows.[6]

Description[edit]

Nginx can be deployed to serve dynamic HTTP content on the network using FastCGI, SCGI handlers for scripts, WSGI application servers or Phusion Passenger module, and it can serve as a software load balancer.[7] Its development started in 2002 by Igor Sysoev.[8] In July 2011, a company was formed as Nginx, Inc. Its principal place of business is San Francisco, California.[9] The company offered commercial support in February 2012,[10][11] and paid NGINX Plus subscription in August 2013.[12] An investment of $10 million led by New Enterprise Associates was reported in October 2013.[13] Other investors reportedly included Aaron Levie.[14] WordPress developer Automattic and Content Delivery Network provider MaxCDN have become funding partners for an update to Google's SPDY version 3.1, slated for early 2014.[15]

Nginx uses an asynchronous event-driven approach to handling requests, instead of the Apache HTTP Server model that defaults to a threaded or process-oriented approach, where the Event MPM is required for asynchronous processing. Nginx's modular event-driven architecture[16] can provide more predictable performance under high loads.[17]

Originally, nginx was developed to fill the needs of websites including Rambler, for which it was serving 500 million requests per day by September 2008.[18] According to Netcraft's February 2014 Web Server Survey,[19] nginx was found to be the third most widely used web server across all domains (15% of surveyed sites) and the second most widely used web server for all "active" sites (13.46% of surveyed sites). According to W3Techs, it was used by 21.5% of the top 1 million websites, 29% of the top 100,000 websites, and by 38.5% of the top 1,000 websites.[20] According to BuiltWith, it is used on 20.8% of the top 10,000 websites, and its growth within the top 10k, 100k and 1 million segments increased.[21] Wikipedia uses nginx as its SSL termination proxy.[22] As of OpenBSD release 5.2 (1 November 2012), nginx became part of the OpenBSD base system, providing an alternative to the system's fork of Apache 1.3, which it was intended to replace.[23] Eventually, Apache was removed from the base system.[24]

HTTP proxy and Web server features[edit]

Mail proxy features[edit]

Other features include upgrading executable and configuration without client connections loss,[36] and a module-based architecture.[37]

See also[edit]

References[edit]

  1. ^ Dounin, Maxim (18 March 2014). "nginx-1.4.7". nginx-announce@nginx.org mailing list. http://mailman.nginx.org/pipermail/nginx-announce/2014/000134.html. Retrieved 18 March 2014.
  2. ^ Dounin, Maxim (8 April 2014). "nginx-1.5.13". nginx-announce@nginx.org mailing list. http://mailman.nginx.org/pipermail/nginx-announce/2014/000136.html. Retrieved 10 April 2014.
  3. ^ "The NGINX Open Source Project on Ohloh". ohloh.net. Retrieved 7 March 2013. 
  4. ^ "nginx". Retrieved 7 March 2013. 
  5. ^ "Licensing". Retrieved 18 January 2013. 
  6. ^ "Tested OS and platforms". Retrieved 15 October 2011. 
  7. ^ Use nginx for Proxy Services and Software Load Balancing, 11 May 2010, by Sam Kleinman, Linode Library
  8. ^ Tony Mobily (5 January 2012). "Interview with Igor Sysoev, author of Apache's competitor NGINX". Free Software Magazine. Retrieved 18 October 2013. 
  9. ^ "Notice of Exempt Offering of Securities". Form D. US Securities and Exchange Commission. 17 October 2013. Retrieved 18 October 2013. 
  10. ^ Darryl K. Taft (8 February 2012). "NGINX Launches Commercial Support for Open-Source Web Server". e Week. Retrieved 18 October 2013. 
  11. ^ Steven J. Vaughan-Nichols (8 February 2012). "Commercial Support now available for the open-source NGINX Web server". ZDNet Open Source blog. Retrieved 18 October 2013. 
  12. ^ "Nginx Inc. Launches NGINX Plus". 22 August 2013. 
  13. ^ Sean Michael Kerner (16 October 2013). "Nginx Raises $10 Million in New Funding for Server Development". e Week. Retrieved 18 October 2013. 
  14. ^ Jolie O'Dell (15 October 2013). "Nginx ties up a sweet $10M funding deal and hundreds of millions of users". Venture Beat. Retrieved 18 October 2013. 
  15. ^ Shankland, Stephen (20 December 2013). "Nginx upgrade funded by fans of Google's SPDY Web protocol". CNET. Retrieved 6 January 2014. 
  16. ^ The Architecture of Open Source Applications. Chapter 14 nginx.
  17. ^ Basic nginx Configuration by Sam Kleinman; 21 August 2010
  18. ^ Nginx: the High-Performance Web Server and Reverse Proxy. Linux Journal. 1 September 2008. Retrieved 16 August 2009. 
  19. ^ "February 2014 Web Server Survey". 3 February 2014. Retrieved 7 February 2014. 
  20. ^ "Usage of web servers broken down by ranking". 6 February 2014. Retrieved 7 February 2014. 
  21. ^ "Statistics behind the nginx success story". 6 February 2014. Retrieved 7 February 2014. 
  22. ^ "Wikitech: HTTPS". Wikitech.wikimedia.org. 3 October 2011. Retrieved 3 December 2011. 
  23. ^ OpenBSD Upgrade Guide: 5.1 to 5.2, 2012/11/06 15:00:27 sthen
  24. ^ OpenBSD Following -current: 2014/03/13 - httpd(8) removed
  25. ^ "Module ngx_http_upstream_module". nginx.org. Retrieved 14 August 2012. 
  26. ^ "Announcing SPDY draft 2 implementation in nginx". nginx.org. 15 June 2012. Retrieved 16 June 2012. 
  27. ^ "Proxy: support for connection upgrade (101 Switching Protocols).". trac.nginx.org. 19 February 2013. Retrieved 21 February 2013. 
  28. ^ "Module ngx_http_mp4_module". nginx.org. Retrieved 24 April 2012. 
  29. ^ "Module ngx_http_gunzip_module". nginx.org. Retrieved 13 September 2012. 
  30. ^ "Module ngx_http_log_module - access_log". nginx.org. Retrieved 25 December 2012. 
  31. ^ "Module ngx_http_core_module - limit_rate". nginx.org. Retrieved 24 June 2012. 
  32. ^ "Module ngx_http_userid_module". nginx.org. Retrieved 20 November 2012. 
  33. ^ "Module ngx_http_xslt_module". nginx.org. Retrieved 6 May 2012. 
  34. ^ "Module ngx_http_perl_module". nginx.org. Retrieved 16 June 2012. 
  35. ^ "Module ngx_mail_auth_http_module". nginx.org. Retrieved 13 September 2012. 
  36. ^ "Official documentation: Controlling nginx". nginx.org. Retrieved 3 December 2011. 
  37. ^ "Third party modules". nginx Wiki. Retrieved 13 September 2012. 

External links[edit]