lighttpd (ライティ[2])は高速性の重視される環境に最適化された、安全・高速で標準に準拠し、柔軟であることを指向して設計されたWebサーバである。

lighttpd
開発元 Jan Kneschke
初版 2003年3月 (21年前) (2003-03)
最新版 1.4.76[1] ウィキデータを編集 - 2024年4月12日 (25時間前) [±]
リポジトリ ウィキデータを編集
プログラミング
言語
C
対応OS Unix系
プラットフォーム クロスプラットフォーム
サポート状況 開発中
種別 Webサーバ
ライセンス BSDライセンス
公式サイト www.lighttpd.net
テンプレートを表示

C10K問題の概念実証としてJan Kneschke によって書かれた。名称の由来は「light」と「httpd」とのかばん語である。

メモリ消費量が少なく、CPU負荷の少ない高速動作が目的となっているため、負荷が問題な場合や、静的コンテンツを動的コンテンツと区別して送信する場合などに適しているとされる。

前提 編集

他のWebサーバと比較して[3]CPUの負荷が小さく、速度が最適化されており[4]、負荷の問題があるサーバ、または動的コンテンツとは別に静的メディアを提供するサーバーにlighttpd が適している。lighttpd は自由なオープンソースソフトウェアであり、BSDライセンスの下で配布されている。Unix系オペレーティングシステムMicrosoft Windowsでネイティブに実行できる[5][6]

アプリケーションサポート 編集

lighttpd は外部プログラムへのFastCGISCGICGIインターフェースをサポートしているため、あらゆるプログラミング言語で書かれたWebアプリケーションサーバで使用できる。特に人気のある言語として、PHPのパフォーマンスは特に注目されている。lighttpd のFastCGIは、オペコードキャッシュAPCなど)を使用してPHPを適切かつ効率的にサポートするように構成できる。lighttpdは、データベース駆動型Webサイトを構築するために設計された復元力のあるインメモリデータベースであるWebDNA英語版もサポートしている。lighttpd はISAPIをサポートしていない。

特徴 編集

  • サーバロードバランスFastCGISCGI、およびHTTPプロキシのサポート
  • chrootシステムコールの使用
  • Webサーバーイベントメカニズムのパフォーマンス-select(), poll(), epoll()
  • kqueueepollなどのより効率的なイベント通知スキームのサポート
  • 条件判定によるURLの書換え(mod_rewrite)
  • OpenSSLを介したSNIサポート付きのTLS/SSL
  • LDAPによる認証
  • RRDtoolによる統計情報
  • ルールで管理されたダウンロード
  • Server Side Includes (サーバー側のCGIは含まれない)[7]
  • バーチャルホスト
  • モジュール機構
  • キャッシュメタ言語(現在mod_magnet に置き換えられている)[8] Luaを使用
  • 最小限のWebDAVのサポート
  • サーブレット(AJP)サポート(バージョン1.5.x以降)
  • mod_compress および新しいmod_deflate (1.4.42)を使用したHTTP圧縮
  • 軽量(1MB未満)[9]
  • 複数のスレッドのみを使用する単一プロセス設計 - 接続ごとにプロセスまたはスレッドは開始されない
  • HTTP/2 のサポート (バージョン 1.4.56 以降)[10]

制限事項 編集

1.4.40より前のバージョンは、X-Sendfileが使用されない限り、CGIFastCGI、またはプロキシ[11]からの大きなファイルの送信を公式にサポートしていない。 この制限はlighttpd 1.4.40で削除された[12]

HTTP/3のサポートなし

使用法・事例 編集

lighttpd は多くのトラフィックの多いWEBサイトで使用されており、その中にはBloglinesXkcdがある[13]。過去にMeeboYouTubeで使用されていた[14]ウィキメディア財団はlighttpd サーバも実行している[15][16][17][18]

参照 編集

脚注 編集

  1. ^ 1.4.76” (12 4月 2024). 12 4月 2024閲覧。
  2. ^ lighttpd fly light”. 2019年3月15日閲覧。 “all of these describe lighttpd (pron. lighty)”.
  3. ^ Web Server Performance Comparison”. 2016年6月5日時点のオリジナルよりアーカイブ。2012年3月15日閲覧。.
  4. ^ Gabriel Kerneis and Juliusz Chroboczek. Are events fast?. PPS technical report, University of Paris 7. 2009.
  5. ^ Downloads @ WLMP Project”. 2011年3月27日閲覧。 “LightTPD webserver for Windows Systems”.
  6. ^ lighttpd fly light”. 2020年2月10日閲覧。
  7. ^ Lighttpd - Bug #1101: SSI include virtual does not run cgi – lighty labs
  8. ^ http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ModMagnet
  9. ^ lighttpd releases”. lighttpd.net. 2010年6月20日閲覧。
  10. ^ Feature #2813: Support for HTTP/2 protocol - Lighttpd - lighty labs”. redmine.lighttpd.net. 2021年1月16日閲覧。
  11. ^ Memory usage increases when proxy+ssl+large file”. lighttpd bug tracker. 2011年4月11日閲覧。
  12. ^ lighty should buffer responses (after it grows above certain size) on disk”. lighttpd bug tracker. 2016年7月16日閲覧。
  13. ^ Lighttpd Web Server Usage”. WebTechster. 2014年3月26日閲覧。
  14. ^ Fly Light With Lighttpd Web Server”. ServerWatch. 2014年3月31日時点のオリジナルよりアーカイブ。2008年2月12日閲覧。
  15. ^ Brion Vibber (2008年8月26日). “Apache mod_php in wikipedia”. Wikimedia wikitech-l mailing list. 2008年8月27日閲覧。
  16. ^ Tim Starling (2008年8月27日). “Apache mod_php in wikipedia”. Wikimedia wikitech-l mailing list. 2008年8月27日閲覧。
  17. ^ Domas Mitzuas (2008年8月27日). “Apache mod_php in wikipedia”. Wikimedia wikitech-l mailing list. 2008年8月27日閲覧。
  18. ^ Powered by Lighttpd”. The official site (2007年4月4日). 2008年12月22日閲覧。 “lighttpd is used by many well-known sites. The typical scenario is using lighttpd as off-load server to push out static content and leave the complex work to another server.”

外部リンク 編集