nginx
作者 | Igor Sysoev |
---|---|
開発元 | Nginx Inc. |
初版 | 2004年10月4日 |
最新版 | 1.26.2[1] - 2024年8月14日 [±] |
リポジトリ | |
プログラミング 言語 | C言語 |
対応OS | Unix系、Microsoft Windows |
種別 | Webサーバ、リバースプロキシ |
ライセンス | BSDライク |
公式サイト |
nginx |
nginx(「エンジンエックス」[2][注釈 1])は、フリーでオープンソースなWebサーバアプリケーションである。処理性能・高い並行性・少ないメモリ使用量を焦点に開発し、HTTP, HTTPS, SMTP, POP3, IMAPのリバースプロキシの機能や、ロードバランサ、HTTPキャッシュなどの機能も有する。
nginx はBSDライクライセンスでリリースされ、Linux, BSD系OS, macOS, Solaris, AIX, HP-UX, Microsoft Windowsで動作する。2004年に Igor Sysoev が公開した。現在は NGINX Plus として nginx のエンタープライズ版の販売やサポートを行っている Nginx, Inc. が管理している。
2019年3月に Nginx, Inc はF5ネットワークスに6億7000万米ドルで買収された。
概要
[編集]nginxはサーバに置かれた静的コンテンツを高速に配信する目的で設計されている。リバースプロキシの機能を持つため、背後にWebアプリケーションサーバを配置して動的なコンテンツを配信したり、ソフトウェアロードバランサ[3]やHTTPキャッシュとしても使うこともできる。各種のウェブアプリケーション用インターフェースとして、FastCGI, uWSGI, Phusion Passengerなども標準でサポートしている。
Apache HTTP Serverがリクエストの処理にデフォルトでスレッドやプロセス指向のアプローチを用いている一方で、nginxは非同期のイベント駆動アプローチを用いている。イベント駆動によるアプローチは、高負荷下において、より予測可能なパフォーマンスを提供すると考えられている[4]。
利用状況
[編集]nginxは当初、Ramblerが運営する各種ウェブサイトのニーズを満たすために開発された。2008年9月の時点で、nginxはこれらのサイトで1日に5億のリクエストを処理していた[5]。
ネットクラフトの2017年2月の調査によると、nginxは全アクティブサイトの中で2番目に多く19.60%で使われているWebサーバである[6]。W3Techsの調査によると、上位1,000サイトの41.1%、上位100,000サイトの32.9%で使われている。BuiltWithによると、上位1万Webサイトの23.8%で使われており、上位1万・10万・100万の区分で成長を続けている。2020年2月におけるNetcraftの調査によると、nginxは全てのアクティヴなWebサイトの36.48%において利用されているWebサーバで、Apacheでの利用率24.51%を上回る1位となっている[7]。W3Techの調査では、それぞれ40.1%, 31.8%である[8]。
Wikipediaは、SSL接続を提供するためのプロキシとしてnginxを使用している[9]。
機能と特徴
[編集]ネットワーク機能
[編集]- 10000以上の同時コネクションの処理
- 負荷分散(ロードバランサ)
- TLS/SSL
- Server Name Indication
- OCSP stapling
- フォールトトレラント性
- IPv6
- 同時コネクション数や頻繁なコネクションの制限
- 帯域制限
- IPアドレスベースの地理位置情報 (geolocation)
主な基本HTTP機能
[編集]- 静的ファイル・インデックスファイルの処理、自動インデクシング
- 仮想サーバ
- 名前ベース
- IPアドレスベース
- FastCGI・uWSGI・SCGI サポート(キャッシュ機能あり)
- リバースプロキシ(キャッシュ機能あり)
- gzip圧縮・解凍、事前gzip圧縮
- URL書き換え
- WebSocket および HTTP/1.1 Upgradeヘッダー
- FLV, MP4ストリーミング
- Webページアクセス認証(HTTP認証)
- カスタマイズ可能なログ機能
- SPDYプロトコルサポート
- HTTP/2プロトコルサポート
- WebDAVサポート
- XSLTサポート
- Server Side Includesサポート
メールプロキシ機能
[編集]その他の機能
[編集]FreeNGINX
[編集]2024年にコア開発者の一人がF5ネットワークスと対立して独立し、NGINXから離れて新たにフォーク版である「freenginx」を開発すると発表した[12]。
関連項目
[編集]脚注
[編集]注釈
[編集]- ^ 日本NGINXサイトに「エンジンエックス」と表記あり。https://www.nginx.co.jp/
出典
[編集]- ^ “Changes with nginx 1.26.2”. 2024年8月14日閲覧。
- ^ “nginx”. 2014年9月17日閲覧。
- ^ Use Nginx for Proxy Services and Software Load Balancing, May 11th, 2010, by Sam Kleinman, Linode Library
- ^ Basic Nginx Configuration by Sam Kleinman; August 21, 2010.
- ^ “Nginx: the High-Performance Web Server and Reverse Proxy”. Linux Journal (2008年9月1日). 2009年8月16日閲覧。
- ^ “February 2017 Web Server Survey” (英語). Netcraft (2017年2月27日). 2017年2月7日時点のオリジナルよりアーカイブ。2017年3月18日閲覧。
- ^ “Netcraft February 2020 Web Server Survey”. Netcraft. Netcraft. 16 August 2019閲覧。
- ^ “Usage Statistics and Market Share of Web Servers, March 2020”. w3techs.com. 2020年3月4日閲覧。
- ^ “Wikitech: HTTPS”. Wikitech.wikimedia.org (3 October 2011). 2014年3月26日時点のオリジナルよりアーカイブ。3 December 2011閲覧。
- ^ “Official documentation: Controlling nginx”. Nginx.org. 3 December 2011閲覧。
- ^ “Third party modules”. Nginx Wiki. 13 September 2012閲覧。
- ^ “NGINXのコア開発者が親会社と決別、新たに「freenginx」という名前でフォーク版を作成開始”. GIGAZINE. 2024年2月27日閲覧。
外部リンク
[編集]- 公式ウェブサイト
- Nginx inc.
- Nginx inc.日本版
- Geolocation with Nginx WIPmania.com
- Nginx "HOW TO" - Fast and Secure Web Server Calomel.org
- freenginx