맨위로가기

Lighttpd

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

Lighttpd는 가볍고 빠르며, 다양한 기능을 지원하는 오픈 소스 웹 서버이다. 로드 밸런싱, CGI, FastCGI, HTTP 프록시, TLS/SSL, URL 재작성 등 다양한 기능을 제공하며, PHP, Python, Perl, Ruby, Lua 등 다양한 프로그래밍 언어를 지원한다. 낮은 메모리 사용량과 효율적인 이벤트 알림 체계를 통해 높은 성능을 제공하며, HTTP/2 및 WebSocket을 지원한다. 과거 유튜브, 위키백과 등에서 사용되었으며, 현재는 임베디드 장치 및 Git의 HTTP 서버 데몬 등으로 사용된다.

더 읽어볼만한 페이지

  • 자유 웹 서버 소프트웨어 - Nginx
    Nginx는 이고르 시소예프가 개발한 웹 서버 소프트웨어로, 높은 성능과 안정성을 바탕으로 웹 서버, 리버스 프록시, 로드 밸런서 등으로 활용되며 대규모 트래픽 처리에 강점을 보이지만, F5 Networks 인수 후 포크 프로젝트가 등장하기도 했다.
  • 자유 웹 서버 소프트웨어 - 아파치 HTTP 서버
    아파치 HTTP 서버는 아파치 소프트웨어 재단에서 관리하는 오픈 소스 웹 서버 소프트웨어로, 다양한 운영체제 지원, 모듈을 통한 기능 확장, 가상 호스팅 등의 기능을 제공하며 전 세계적으로 널리 사용된다.
  • 유닉스 네트워크 관련 소프트웨어 - Rlogin
    rlogin은 네트워크를 통해 다른 서버에 로그인하는 응용 계층 프로토콜이자 명령어로, 보안 취약성으로 인해 SSH로 대체되고 있다.
  • 유닉스 네트워크 관련 소프트웨어 - 아파치 HTTP 서버
    아파치 HTTP 서버는 아파치 소프트웨어 재단에서 관리하는 오픈 소스 웹 서버 소프트웨어로, 다양한 운영체제 지원, 모듈을 통한 기능 확장, 가상 호스팅 등의 기능을 제공하며 전 세계적으로 널리 사용된다.
  • 크로스 플랫폼 자유 소프트웨어 - 김프
    김프(GIMP)는 GNU 프로젝트에서 개발된 크로스 플랫폼 기반의 무료 오픈소스 래스터 그래픽 편집기로, 다양한 운영체제를 지원하며 풍부한 기능을 제공하지만 사용자 인터페이스에 대한 비판과 일부 기능의 부족함에 대한 평가도 존재한다.
  • 크로스 플랫폼 자유 소프트웨어 - Tcl
    Tcl은 존 오스터하우트가 개발한 명령어 기반의 프로그래밍 언어로, Tk 툴킷과 결합하여 GUI 스크립팅 환경으로 발전했으며, 다양한 운영체제에서 사용 가능하고 C, C++, Java 등 다른 언어와의 인터페이스를 지원한다.
Lighttpd - [IT 관련 정보]에 관한 문서
기본 정보
명칭lighttpd (라이티라고 발음)
설명가벼운 웹 서버
개발자얀 크네슈케
출시일2003년 3월
프로그래밍 언어C
지원 언어영어
종류웹 서버
라이선스BSD-3-Clause
웹사이트lighttpd 공식 웹사이트

2. 특징

Lighttpd는 성능과 효율성에 중점을 둔 경량 웹 서버이다. 낮은 CPU 부하와 적은 메모리 사용량, 속도 최적화 덕분에[18] 부하가 많은 서버나 정적 콘텐츠를 주로 서비스하는 서버에 적합하다.[17]

주요 특징으로는 로드 밸런싱, CGI, FastCGI, SCGI, HTTP 프록시, 서블릿 AJP, WebSocket 터널 등 다양한 인터페이스와 프로토콜 지원을 포함한다. 보안 강화를 위한 chroot 환경, 조건부 URL 재작성(mod_rewrite), TLS/SSL 및 SNI 지원[8], LDAP 인증 등 다양한 기능을 제공한다. 웹 서버 이벤트 처리 성능 향상을 위해 select(), poll() 외에도 고효율 이벤트 알림 방식인 epoll이나 kqueue를 지원한다.[7] 또한 SSI[9], 가상 호스팅, 모듈 구조, Lua 스크립트[10], WebDAV, HTTP 압축 등의 기능을 지원한다.

단일 프로세스와 적은 수의 스레드로 동작하여 자원 사용을 최소화하며, 버전 1.4.56부터 HTTP/2를 지원하고,[24] 버전 1.4.65부터는 HTTP/2 환경에서의 WebSocket 통신도 지원한다.

Lighttpd는 자유 오픈 소스 소프트웨어이며, BSD 라이선스 하에 배포된다. 유닉스 계열 운영 체제와 마이크로소프트 윈도우에서 네이티브로 실행될 수 있다.[19][20]

2. 1. 성능 및 효율성

Lighttpd는 다른 웹 서버에 비해 메모리 사용량이 적고,[4] CPU 부하가 낮으며 속도 최적화가 이루어져 있다.[5][18] 이러한 특징 덕분에 부하 문제가 있는 서버나 동적 콘텐츠와 별도로 정적 미디어를 제공하는 서버에 적합하다.[17]

웹 서버 이벤트 처리의 성능 향상을 위해 select(), poll()과 같은 기본적인 방식뿐만 아니라, epoll (리눅스)이나 kqueue (FreeBSD 등)와 같이 더 효율적인 이벤트 알림 체계를 지원한다. 이를 통해 많은 동시 연결을 효과적으로 처리할 수 있다.

또한, Lighttpd는 여러 스레드를 사용하는 단일 프로세스 설계를 채택하여, 연결마다 새로운 프로세스나 스레드를 생성하지 않고 리소스 사용을 최소화한다. 전체 프로그램 크기도 1MB 미만으로 매우 가볍다.[23]

2. 2. 다양한 기능 지원

lighttpd는 다양한 기능을 지원하여 웹 서버 환경을 유연하게 구성할 수 있다. 주요 기능은 다음과 같다.

  • 인터페이스 지원: 외부 프로그램과의 연동을 위해 FastCGI, SCGI, CGI 인터페이스를 지원한다. 이를 통해 PHP, Perl, Python, Ruby 등 다양한 프로그래밍 언어로 작성된 웹 애플리케이션을 서버에서 실행할 수 있다. 특히 PHP와 함께 사용할 때 성능이 우수한 것으로 알려져 있으며, lighttpd의 FastCGI는 오퍼코드 캐시(APC 등)를 사용하여 PHP를 효율적으로 지원하도록 구성할 수 있다. 또한, 서블릿 AJP (버전 1.5.x 이후) 및 데이터베이스 기반 웹사이트 구축에 사용되는 WebDNA도 지원한다. 단, ISAPI는 지원하지 않는다.
  • 네트워크 기능: 로드 밸런싱 기능을 통해 여러 서버로 트래픽을 분산할 수 있다. HTTP 프록시 및 WebSocket 터널 기능도 제공한다.
  • 보안: TLS/SSL을 통한 암호화 통신과 SNI (Server Name Indication)를 지원한다. 이를 위해 OpenSSL, GnuTLS, Mbed TLS, NSS, WolfSSL 등의 라이브러리를 사용할 수 있다.[8] 사용자 인증 방식으로는 LDAP 또는 DBI 서버를 통한 인증을 지원한다. 시스템 보안 강화를 위해 chroot 기능을 지원한다.
  • 성능 및 효율성: 웹 서버 이벤트 처리 방식으로 `select()`, `poll()`, `epoll()`[7] 등을 지원하며, 특히 `kqueue`나 `epoll`과 같은 고성능 이벤트 알림 방식을 지원하여 많은 동시 접속 처리에 효율적이다. 단일 프로세스와 소수의 스레드로 동작하는 설계를 채택하여 메모리 사용량이 적고(1MB 미만)[11] 가볍게 작동한다. 새로운 연결이 발생할 때마다 프로세스나 스레드를 생성하지 않아 자원 소모를 줄였다.
  • URL 처리: 조건에 따라 URL 재작성을 수행하는 mod_rewrite 기능을 지원한다.
  • 통계 및 관리: RRDtool을 이용한 서버 통계 정보 생성을 지원한다. 규칙 기반의 다운로드 관리 기능도 제공한다.
  • 콘텐츠 처리: SSI (Server Side Includes)를 지원하여 HTML 페이지 내에 다른 파일이나 동적인 콘텐츠를 포함시킬 수 있다. 단, SSI 내에서 서버 측 CGI 실행은 지원하지 않는다.[9] mod_deflate 모듈을 통해 HTTP 압축 (zlib, brotli, zstd 알고리즘 사용) 기능을 제공하여 전송 데이터 양을 줄일 수 있다. WebDAV 프로토콜도 지원한다.
  • 확장성: 모듈 구조를 채택하여 필요한 기능을 추가하거나 확장하기 용이하다. mod_magnet 모듈을 통해 Lua 스크립트를 사용하여 서버 동작을 제어할 수 있다.[10]
  • 호스팅: 유연한 가상 호스팅 기능을 지원하여 단일 서버에서 여러 도메인의 웹사이트를 운영할 수 있다.
  • 최신 프로토콜 지원: lighttpd 버전 1.4.56부터 HTTP/2 프로토콜을 지원하며,[24] 버전 1.4.65부터는 HTTP/2 환경에서의 WebSocket 통신도 지원한다.

2. 3. 애플리케이션 지원

lighttpd는 외부 프로그램과의 인터페이스를 위해 FastCGI, SCGI, CGI를 지원하여, 어떤 프로그래밍 언어로 작성된 웹 애플리케이션이든 서버와 함께 사용할 수 있도록 한다.[1][2] 특히 인기 있는 언어인 PHP의 성능에 특별한 주의를 기울였으며, lighttpd의 FastCGI는 opcode 캐시(APC) 등을 사용하여 PHP를 적절하고 효율적으로 지원하도록 설정할 수 있다.[1][2] 또한, 파이썬, , 루비, 루아 커뮤니티에서도 주목받고 있다.[1] lighttpd는 데이터베이스 기반 웹사이트 구축을 위해 설계된 탄력적인 인 메모리 데이터베이스 시스템인 WebDNA도 지원한다.[1][2] Catalyst 및 루비 온 레일스 웹 프레임워크에서 인기 있는 웹 서버이다.[1] lighttpd는 ISAPI를 지원하지 않는다.[1][2]

3. 한계


  • Lighttpd 1.4.40 이전 버전에서는 X-Sendfile을 사용하지 않을 경우 CGI, FastCGI, 프록시 환경에서 큰 파일을 전송하는 것을 공식적으로 지원하지 않았다.[36][12] 이 제한은 lighttpd 1.4.40 버전에서 해결되었다.[37][13]
  • HTTP/3을 지원하지 않는다.

4. 사용 사례

Lighttpd는 과거 웹 2.0 시대에 트래픽이 많은 여러 유명 웹사이트에서 사용되었다. 2006년 기준으로 유튜브, 위키백과, SourceForge, Meebo 등이 대표적이며[34][14], Bloglines와 Xkcd 역시 Lighttpd를 사용했다.[27] 이러한 인기를 바탕으로 2007년 4월 넷크래프트의 웹 서버 순위에서 5위를 기록했으며,[35] 당시 Alexa 기준 최상위 250개 사이트 중 5개 사이트가 Lighttpd를 사용하고 있었다.[34] 위키미디어 재단 또한 과거에 Lighttpd 서버를 운영한 바 있다.[15][29][30][31][32]

상대적으로 작은 크기 덕분에 GL.iNet이나 Turris Omnia와 같은 임베디드 장치에서 자주 사용된다. 또한 Git에서는 HTTP 서버 데몬으로 활용된다.

5. 한국에서의 사용

Lighttpd는 웹 2.0 시대가 열리면서 주목받기 시작했다. 2006년을 기준으로 YouTube, Wikipedia, Sourceforge, Meebo와 같은 세계적으로 유명한 웹사이트들이 Lighttpd를 웹 서버로 채택하면서[34], 한국 내에서도 이 기술에 대한 관심이 높아지는 계기가 되었다.

이러한 국제적인 성공 사례는 2007년 4월, 웹 서버 기술 조사 업체인 넷크래프트가 발표한 시장 점유율 순위에서 Lighttpd가 5위를 기록하는 결과로 이어졌다.[35] 또한, 당시 인터넷 트래픽 분석 사이트인 알렉사가 선정한 전 세계 상위 250개 웹사이트 중 5곳이 Lighttpd를 사용하고 있다는 사실[34] 또한 Lighttpd의 성능과 안정성을 보여주는 사례로 언급되었다.

6. 같이 보기


  • 웹 서버 소프트웨어 비교
  • 인터넷 캐시 프로토콜
  • 프록시 서버 - 클라이언트 측 프록시에 대한 설명
  • 리버스 프록시 - 오리진 측 프록시에 대한 설명
  • 트래픽 서버
  • 웹 가속기 - 호스트 기반 HTTP 가속에 대한 설명

참조

[1] 웹사이트 lighttpd fly light http://www.lighttpd.[...] 2010-06-13
[2] 웹사이트 lighttpd: Story http://www.lighttpd.[...] lighttpd.net 2008-12-22
[3] 웹사이트 Powered By lighttpd http://trac.lighttpd[...] Lighttpd wiki 2008-12-22
[4] 웹사이트 Web Server Performance Comparison http://wiki.dreamhos[...] 2012-03-15
[5] 논문 Are events fast? http://www.pps.jussi[...] University of Paris 7 2009
[6] 웹사이트 lighttpd release 1.4.70 https://redmine.ligh[...] 2023-05-10
[7] 웹사이트 Comparing and Evaluating epoll, select, and poll Event Mechanisms https://cs.uwaterloo[...] University of Waterloo 2004
[8] 웹사이트 1.4.56 - Lighttpd - fly light https://www.lighttpd[...] 2020-11-29
[9] Lighttpd Lighttpd - Bug #1101: SSI include virtual does not run cgi http://redmine.light[...] lighty labs
[10] 웹사이트 Docs ModMagnet - Lighttpd - lighty labs http://redmine.light[...]
[11] 웹사이트 lighttpd releases http://download.ligh[...] lighttpd.net 2010-06-20
[12] 웹사이트 Memory usage increases when proxy+ssl+large file http://redmine.light[...] lighttpd bug tracker 2011-04-11
[13] 웹사이트 lighty should buffer responses (after it grows above certain size) on disk https://redmine.ligh[...] lighttpd bug tracker 2016-07-16
[14] 웹사이트 Fly Light With Lighttpd Web Server http://www.serverwat[...] ServerWatch 2008-02-12
[15] 웹사이트 Powered by Lighttpd http://www.lighttpd.[...] The official site 2007-04-04
[16] 웹사이트 lighttpd fly light http://www.lighttpd.[...] 2019-03-15
[17] 웹사이트 Web Server Performance Comparison http://wiki.dreamhos[...] 2012-03-15
[18] 논문 Are events fast? http://www.pps.jussi[...] University of Paris 7 2009
[19] 웹사이트 Downloads @ WLMP Project http://en.wlmp-proje[...] 2011-03-27
[20] 웹사이트 lighttpd fly light http://lighttpd.dtec[...] 2020-02-10
[21] Lighttpd Lighttpd - Bug #1101: SSI include virtual does not run cgi http://redmine.light[...] lighty labs
[22] 문서 http://redmine.light[...]
[23] 웹사이트 lighttpd releases http://download.ligh[...] lighttpd.net 2010-06-20
[24] 웹사이트 Feature #2813: Support for HTTP/2 protocol - Lighttpd - lighty labs https://redmine.ligh[...] 2021-01-16
[25] 웹사이트 Memory usage increases when proxy+ssl+large file http://redmine.light[...] lighttpd bug tracker 2011-04-11
[26] 웹사이트 lighty should buffer responses (after it grows above certain size) on disk https://redmine.ligh[...] lighttpd bug tracker 2016-07-16
[27] 웹사이트 Lighttpd Web Server Usage http://www.webtechst[...] WebTechster 2014-03-26
[28] 웹사이트 Fly Light With Lighttpd Web Server http://www.serverwat[...] ServerWatch 2008-02-12
[29] 웹사이트 Apache mod_php in wikipedia http://lists.wikimed[...] Wikimedia wikitech-l mailing list 2008-08-26
[30] 웹사이트 Apache mod_php in wikipedia http://lists.wikimed[...] Wikimedia wikitech-l mailing list 2008-08-27
[31] 웹사이트 Apache mod_php in wikipedia http://lists.wikimed[...] Wikimedia wikitech-l mailing list 2008-08-27
[32] 웹사이트 Powered by Lighttpd http://www.lighttpd.[...] The official site 2007-04-04
[33] 웨이백 lite-tee-pee-dee'라고 발음하며, 짧게는 '라이티(lighty)'라고 부른다. 한빛미디어의 lighttpd 항목 http://network.hanb.[...] 2013-06-16
[34] Lighttpd Lighttpd powers 6 Alexa Top 250 sites http://blog.lighttpd[...]
[35] 뉴스 April 2007 Web Server Survey - Netcraft http://news.netcraft[...]
[36] 웹인용 Memory usage increases when proxy+ssl+large file http://redmine.light[...] lighttpd bug tracker 2011-04-11
[37] 웹인용 lighty should buffer responses (after it grows above certain size) on disk https://redmine.ligh[...] lighttpd bug tracker 2016-07-16



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com