Inhaltsverzeichnis


1 Einführung .-

Lighttpd ist ein Web-Server-Betriebssysteme für Unix / Linux und Microsoft Windows. Dieser Server auch bekannt als Light Jahr, ist eine Alternative für den Apache Web-Server.

Diese diseado, sicher zu sein, schnell (sehr schnell, die Wahrheit zu sagen), kompatibel mit den Standards und flexibel zugleich, dass dieser optimiert für Umgebungen, in denen Geschwindigkeit ist von entscheidender Bedeutung. Sein Speicher Fußabdruck ist sehr klein (im Vergleich zu anderen Web-Servern), eine leichte Last auf die CPU-Geschwindigkeit und seinen Ansatz macht den Meister lighttpd-Server zu laden.

2 .- Installation auf Debian

So installieren Sie lighttpd, Typ, als root:

  deathbian: ~ # apt-get install lighttpd 

Hinweis: Unter Debian Lenny, lighttpd läuft mit dem Benutzer www-data, und nicht lighttpd.

3 .- Basis-Konfiguration

Die Installation auf Debian stellt uns mit der Konfiguration von Dateien und Boot-Light Jahr, aber wenn brauchen Sie ein paar Beispiele

file: / etc / lighttpd / lighttpd.conf

  # Debian lighttpd Konfigurationsdatei 
 # 

  ############ Optionen, muss man sich kümmern #################### 

  # # Module zu laden 
  # Mod_access, mod_accesslog und 'mod_alias' geladen werden standardmäßig 
  # Alle anderen Modul sollte nur geladen werden, wenn notwendig 
  # - Speichert einiger Zeit 
  # - Speichert Speicher 

  server.modules = ( 
              "mod_access" 
              " 'mod_alias'" 
              "mod_accesslog" 
              "mod_compress" 
              "mod_fastcgi" 
  # "Mod_rewrite" 
  # "Mod_redirect" 
  # "Mod_status" 
  # "Mod_evhost" 
  # "Mod_usertrack" 
  # "Mod_rrdtool" 
  # "Mod_webdav" 
  # "Mod_expire" 
  # "Mod_flv_streaming" 
  # "Mod_evasive" 
  ) 

  fastcgi.server = (. "php" => (( 
                      "bin-path '=>" / usr / bin / php-cgi " 
                      "Sockel" => "/ tmp / php.socket" 
                  ))) 
  # # Eine statische Dokument-Root, für virtuelle Hosting-nehmen Blick auf die 
  # # # * Server.virtual-Optionen 
  server.document-root = "/ var / www /" 

  # # Wo das Senden von Nachrichten auf Fehler -- 
  server.errorlog = "/ var / log / lighttpd / error.log" 

  # # Dateien zu überprüfen, denn wenn ... / beantragt wird 
  Index-FILE.NAMES = ( "index.php", "index.html" 
                                 "index.htm", "default.htm" 
                                 "index.lighttpd.html") 

  # # Benutzen Sie die "Content-Type"-Attribut erweitert, um MIME-Typ, wenn möglich 
  # Mimetype.use-xattr = "enable" 

  # # # # Accesslog Modul 
  accesslog.filename = "/ var / log / lighttpd / access.log" 
  # # Verweigern Zugriff auf die Datei-Erweiterungen 
 # 
  # ~ Ist für backupfiles von vi, emacs, joe, ... 
  #. Inc wird häufig verwendet für Code, die im allgemeinen sollten nicht Teil 
  # Von den Dokument-Root - 
  url.access-leugnen = ( "~". "inc") 

  # # 
  # Welche Erweiterungen sollte nicht mit über statische-File-Transfer 
 # 
  #. PHP,. Pl,. Fcgi sind am häufigsten von mod_fastcgi oder mod_cgi 
  file.exclude-static-Erweiterungen = (. "php". "pl", ". fcgi") 

  ######### Optionen, die sind gut, aber nicht notwendig, geändert werden ####### 

  # # Bind auf Port (Standard: 80) 
  # Server.port = 81 

  # # Bind, um nur localhost (Standard: alle Schnittstellen) 
  # # Server.bind = "localhost" 

  # # Error-Handler-Status für 404 
  # Server.error-Handler-404 = "/ error-handler.html" 
  # Server.error-Handler-404 = "/ error-handler.php" 

  # # Um die rc.scripts 
  server.pid-file = "/ var / run / lighttpd.pid" 

  # # 
  # # Format:   . Html 
  # # -> ..../status-404.html Für "Datei nicht gefunden" 
  # Server.errorfile-prefix = "/ var / www /" 

  # # Virtual Verzeichnislisten 
  listing.encoding-dir = "UTF-8" 
  server.dir-Auflistung = "enable" 

  # # Send-Header unbehandelte HTTP-Header, um Fehler-log 
  # Debug.dump-unknown-Header = "enable" 

  # # # Nur root können diese Optionen 
 # 
  # Chroot (), um Verzeichnis (Standard: keine chroot ()) 
  server.chroot = # "/" 

  # # UID zu ändern   (Standard: egal) 
  server.username = "www-data" 

  # # UID zu ändern   (Standard: egal) 
  server.groupname = "www-data" 

  # # # # Compress-Modul 
  compress.cache-dir = "/ var / cache / lighttpd / komprimieren /" 
  compress.filetype = ( "text / plain", "text / html", "application / x-javascript", "text / css") 

  # # # # Status-Modul 
  # Status.status-url = "/ Server-Status" 
  # Status.config-url = "/ server-config" 

  # # # # Url Handling-Module (neu schreiben, umleiten, Zugang) 
  Url.rewrite # = (= "^/$"> "/ Server-Status") 
  # Url.redirect = ( "^ / Wunschliste /(.+)" =>" http://www.123.org/ $ 1 ") 

 # 
  # Definieren Sie ein Muster für die Host-URL zu finden 
  #%% =>%-Zeichen 
  #% 0 => + Domain-Namen tld 
  #% 1 => tld 
  #% 2 => Domain-Namen ohne tld 
  #% 3 => 1 Sub-Domain-Namen 
  #% 4 => 2 Sub-Domain-Namen 
 # 
  # Evhost.path-pattern = "/ home / storage / dev / www /% 3/htdocs /" 

  # # # # End-Modul 
  # Expire.url = ( "/ Buggy /" => "Zugang 2 Stunden", "/ asdhas /" => "access plus 1 Sekunde 2 Minuten") 

  # # # # Rrdtool 
  Rrdtool.binary # = "/ usr / bin / rrdtool" 
  # Rrdtool.db-name = "/ var / www / lighttpd.rrd" 

  # # # # Griff Debian Policy Manual, Abschnitt 11.5.  URLs 
  # # # # Und standardmäßig damit sie nur von localhost 

  $ HTTP [ "remoteIP"] == "127.0.0.1" ( 
          alias.url + = ( 
                  "/ Doc /" => "/ usr / share / doc /" 
                  "/ Images /" => "/ usr / share / images /" 
         ) 
          $ HTTP [ "url"] = ~ "^ / doc / | ^ / images /" ( 
                  listing.activate-dir = "enable" 
          ) 
  ) 

  # # # # Variable Nutzung: 
  # # Variable ohne Namen. "  ist mit dem Auto Präfix "var".  und wird "var.bar" 
  bar = 1 # 
  # Var.mystring = foo 

  # # Integer hinzufügen 
  # + = 1 bar 
  # # String concat, mit ganzen Besetzung als String, Ergebnis: "www.foo1.com" 
  server.name # = "www."  Var.bar mystring + + +. "Com" 
  # # Array fusionieren 
  # Index-FILE.NAMES = (foo +. "Php") + index-FILE.NAMES 
  # Index-FILE.NAMES + = (foo +. "Php") 

  # # # # Externe Konfigurationsdateien 
  # # Mimetype Mapping 
  include_shell "/ usr / share / lighttpd / create-mime.assign.pl" 

  # # Load aktiviert Konfigurationsdateien, 
  # # Lesen Sie die / etc / lighttpd / conf-verfügbar / README ersten 
  include_shell "/ usr / share / lighttpd / include-conf-enabled.pl" 

  $ SERVER [ 'Sockel'] == "443" ( 
    ssl.engine = "enable" 
    ssl.pemfile = "/ etc / ssl / certs / lighttpd.pem" 
  ) 

Mit Licht installiert und ordnungsgemäß funktioniert, und wir sind nicht benutzen Apache 1.3/2.x, so was besser entfernen Sie das System (Denken Sie daran, Daten-und Apache-Konfigurationsdateien), Eingabe:

  deathbian: ~ # apt-get remove apache2 

3/1 .- Einstellen der Richtlinien der nationalen lighttpd

  • server.document-root = / var / www / html gibt das Verzeichnis standardmäßig zu den Standorten.
  • server.port = 80 Gibt die Standard-Port für den Server.
  • server.username = www-data Benutzer in Debian, auf denen läuft Light Jahr.
  • server.groupname = www-data Gibt den Benutzernamen und Gruppe, mit der startet / stoppt den Server-Daemon lighttpd. Dies ist eine Sicherung, so dass in dieser Art läuft nicht mit Root-Privilegien.
  • server.bind = Server-IP-Adresse gibt die IP-Adresse des Servers. So ist es auch möglich, geben Sie einen Hostnamen oder localhost.
  • server.tag = lighttpd verwendet wird, um den Namen und die Versionsnummer von lighttpd (Standard). Dies ist ein Sicherheits-Feature. Sie können diesen Weg:
      server.tag = "My Web-Server v1.0" 

    Hinweis: Dies ist der Name, das den Server in Reaktion auf seine Krankenbett. Sie können Ihr Zimmer mit Netcraft.

  • server.errorlog = / var / log / lighttpd / error.log Gibt die Log-Datei der Fehler aufgetreten ist.
  • accesslog.filename = / var / log / lighttpd
  • Gibt die Log-Datei-Zugriffe, die benutzt werden können von einer Anwendung der Statistik der Besucher, wie webalizer.
  • Index-FILE.NAMES = (index.php, index.html) Eine Auflistung der Dateien in jedem Verzeichnis standardmäßig aktiviert.
  • server.modules = (
    Mod_access,
    Mod_accesslog,
    Mod_fastcgi,
    Mod_rewrite,
    Mod_auth
    ): Die oben beschriebenen Module werden die einzigen Kosten, Light Jahr. Natürlich ist es möglich, mehr hinzuzufügen. Von hier aus das Geheimnis der Geschwindigkeit und der Low-Memory-Verbrauch auf dem Server, sehen wir eine detailliertere Beschreibung:

    • mod_access: Der Zugang Modul wird verwendet, um den Zugang zu bestimmten Dateien.
    • mod_accesslog: Gebraucht zu schreiben das Blog CLF, flexible apache.
    • mod_fastcgi: Unterstützung für FastCGI Perl / PHP etc.
    • mod_rewrite: Notwendige zur umgeschrieben URL's SEO-kompatibel ist.
    • mod_auth: Authentifizierung, die in der Regel für ein Passwort geschützte Verzeichnisse.
  • mimetype.assign = (
    . Pdf => application / pdf,
    . Sig. => application / pgp-signature
    ): Bei der Zuweisung der Kartierung der Mimetype.

Bearbeiten Sie die Datei / etc / lighttpd / lighttpd.conf und alle Richtlinien oben dargelegt.

  deathbian: ~ # vim / etc / lighttpd / lighttpd.conf 

4 .- Überprüfung der Web-Service

Da alles ist so konfiguriert, dass unsere Bedürfnisse werden wir speichern Sie die Datei und starten Sie den Daemon lighttpd:

  deathbian: ~ # / etc / init.d / lighttpd starten 

Wenn Sie überprüfen möchten, welche Dienste ausgeführt werden und auf welchem Port, zur Überprüfung der erfolgreichen Installation unserer lighttpd, Typ:

  deathbian: ~ # netstat-ntulp 
  Aktive Internet-Verbindungen (nur Server) 
  Proto recv-Q Send-Q Local Address Foreign Address State PID / Program name 
  tcp 0 0 127.0.0.1:3306 0.0.0.0: * LISTEN 2522/mysqld 
  tcp 0 0 0.0.0.0:111 0.0.0.0: * LISTEN 2151/portmap 
  tcp 0 0 0.0.0.0:80 0.0.0.0: * LISTEN 2720/lighttpd 
  tcp 0 0 0.0.0.0:113 0.0.0.0: * LISTEN 2742/inetd 
  tcp 0 0 0.0.0.0:21 0.0.0.0: * LISTEN 2927/tcpsvd 
  tcp 0 0 0.0.0.0:443 0.0.0.0: * LISTEN 2720/lighttpd 
  tcp 0 0 127.0.0.1:831 0.0.0.0: * LISTEN 2775/famd 
  tcp6 0 0::: 22::: * LISTEN 2444/sshd 
  udp 0 0 0.0.0.0:32768 0.0.0.0: * 2432/lwresd 
  udp 0 0 0.0.0.0:32770 0.0.0.0: * 2793/avahi-daemon: 
  udp 0 0 0.0.0.0:517 0.0.0.0: * 2742/inetd 
  udp 0 0 0.0.0.0:518 0.0.0.0: * 2742/inetd 
  udp 0 0 127.0.0.1:921 0.0.0.0: * 2432/lwresd 
  udp 0 0 0.0.0.0:5353 0.0.0.0: * 2793/avahi-daemon: 
  udp 0 0 0.0.0.0:111 0.0.0.0: * 2151/portmap 
  udp6 0 0::: 32769::: * 2432/lwresd 

Gehen Sie nun in Ihrem Browser, entweder Firefox oder Internet Explorer und prüfen Sie, ob unsere neue Website zugänglich via Web, geben Sie in die Adressleiste Ihres Browsers
http://localhost/ oder http://127.0.0.1/

5. Abschließende Worte

Aus persönlicher Erfahrung kann ich Ihnen versichern, dass die Leistung von Apache ist sehr viel niedriger im Vergleich zu lighttp.

Light Mai werden sehr jung (im Vergleich zu anderen Systemen, Web-Server), der Suche nach Antwort auf die Realität unserer Tage, die web2.0, die höhere Leistung für Websites mit Tausenden von Besuchern täglich.

Im Laufe der nächsten Tage wird nach Artikel dergleichen;

Optimierung der Web-Server lighttpd

  • Konfiguration von PHP FastCGI auf lighttpd
  • Konfiguration des virtuellen Hosting auf lighttpd
  • Kompilieren und zu optimieren PHP-Skripte auf lighttpd mit php eAccelerator
  • Lösung von Problemen mit den Cache eAccelerator

Stärkung der Sicherheit der lighttpd

  • Extreme Web-Server-Sicherheit: Setzen lighttpd, PHP, Perl, MySQL mit Unterstützung für ein Umfeld von Virtual File System (chroot-Gefängnis)
  • SSL-Konfiguration
  • Erstellen und verwenden unsere eigenen SSL-Zertifikat in lighttpd
  • Mit Passwort-Schutz; auf Verzeichnisse

Verschiedene Konfiguration lighttpd

  • Installation und Konfiguration des Webalizer Statistik für lighttpd
  • URLs für wordpress SEO kompatibel mit lighttpd
  • Deny direkte Links oder Diebstahl von Bildern (leeching) mit lighttpd

Monitoring Server lighttpd

  • Monitor und starten Sie den Dienst lighttpd, wenn es zum Absturz.

Popularity: 54% [?]