Sicherheit, Geschwindigkeit, Compliance und Flexibilität – all dies beschreibt lighttpd (pron. lighty), das die Effizienz eines Webservers schnell neu definiert; da es für Hochleistungsumgebungen entwickelt und optimiert wurde. Mit einem geringen Speicherbedarf im Vergleich zu anderen Webservern, einem effektiven Management der CPU-Last und einem erweiterten Funktionsumfang (FastCGI, SCGI, Auth, Output-Compression, URL-Rewriting und viele mehr) ist lighttpd die perfekte Lösung für jeden Server das leidet unter Belastungsproblemen. Und das Beste ist, dass es unter der überarbeiteten BSD-Lizenz Open Source lizenziert ist.
Hier erkläre ich Ihnen die Installation von Lighttd mit PHP und MySQL auf Fedora 16.
Lighttpd installieren:
Zu Beginn installieren wir Lighttpd.
Öffnen Sie das Terminal und wechseln Sie zum Root-Benutzer.
[raj@geeksite~/]$ su
Geben Sie den folgenden Befehl auf dem Terminal ein und drücken Sie dann die Eingabetaste.
[root@geeksite~/]# yum install lighttpd
Starten Sie den Lighttpd mit dem folgenden Befehl.
[root@geeksite~/]# systemctl start lighttpd.service
Damit der Apache bei jedem Start startet, geben Sie Folgendes im Terminal ein und drücken Sie die Eingabetaste.
[root@geeksite~/]# systemctl enable lighttpd.service
Lighttpd testen:
Um sicherzustellen, dass alles korrekt installiert ist, werden wir Lighttpd jetzt testen, um sicherzustellen, dass es ordnungsgemäß funktioniert. Öffnen Sie einen beliebigen Webbrowser und geben Sie dann Folgendes in die Webadresse ein:
http://localhost/ or http://your.ip.addr.ess
Sie erhalten die Webseite mit der Aufschrift „Powered by lighttpd“, das Standard-Dokumentenverzeichnis von lighttpd ist /var/www/lighttpd auf Fedora; die Konfigurationsdatei ist /etc/lighttpd/lighttpd.conf und zusätzliche Konfigurationen werden in /etc/lighttpd/conf.d/ gespeichert Verzeichnis.
Installieren von MySQL:
Als nächstes folgt die Installation des MySQL-Servers, MySQL ist im Fedora-Paket verfügbar; Geben Sie einfach den folgenden Befehl aus, um es zu installieren.
[root@geeksite~/]# yum install mysql mysql-server php-mysql
MySQL-Server starten.
[root@geeksite~/]# systemctl start mysqld.service
Damit MySQL bei jedem Start gestartet wird, geben Sie Folgendes im Terminal ein und drücken Sie die Eingabetaste.
[root@geeksite~/]# systemctl enable mysqld.service
Als nächstes machen Sie MySQL sicher, indem Sie die mysql_secure_installation verwenden Befehl.
Mit diesem Programm können Sie die Sicherheit Ihrer MySQL-Installation auf folgende Weise verbessern:
- Sie können ein Passwort für
root
festlegen Konten. - Sie können
root
entfernen Konten, auf die von außerhalb des lokalen Hosts zugegriffen werden kann. - Sie können anonyme Benutzerkonten entfernen.
- Sie können den
test
entfernen Datenbank (auf die standardmäßig alle Benutzer zugreifen können, sogar anonyme Benutzer) und Berechtigungen, die es jedem erlauben, auf Datenbanken mit Namen zuzugreifen, die mittest_
beginnen .
[root@geeksite~/]# mysql_secure_installation
HINWEIS:DAS AUSFÜHREN ALLER TEILE DIESES SKRIPTS WIRD FÜR ALLE MySQL EMPFOHLEN
SERVER IM PRODUKTIONSGEBRAUCH! BITTE LESEN SIE JEDEN SCHRITT SORGFÄLTIG!
Um sich bei MySQL anzumelden, um es zu sichern, benötigen wir den aktuellen
Passwort für den Root-Benutzer. Wenn Sie gerade MySQL installiert haben, und
Sie das Root-Passwort noch nicht festgelegt haben, das Passwort wird leer sein,
daher sollten Sie hier einfach die Eingabetaste drücken.
Geben Sie das aktuelle Passwort für Root ein (Eingabe für None): <– ENTER
Okay, erfolgreich verwendetes Passwort, weiter …
Das Festlegen des Root-Passworts stellt sicher, dass sich niemand bei MySQL anmelden kann
Root-Benutzer ohne die richtige Autorisierung.
Root-Passwort festlegen? [J/n] <– ENTER
Neues Passwort: <– Ihr Rootsql-Passwort
Geben Sie das neue Passwort erneut ein: <– yourrootsqlpassword
Passwort erfolgreich aktualisiert!
Berechtigungstabellen werden neu geladen..
… Erfolg!
Standardmäßig hat eine MySQL-Installation einen anonymen Benutzer, der jeder zulassen
um sich bei MySQL anzumelden, ohne dass für ein Benutzerkonto erstellt werden muss
sie. Dies ist nur zum Testen und zur Installation gedacht
geht etwas flüssiger. Sie sollten sie entfernen, bevor Sie in einen einziehen
Produktionsumgebung.
Anonyme Nutzer entfernen? [J/n] <– ENTER
… Erfolg!
Normalerweise sollte Root nur erlaubt sein, sich von „localhost“ zu verbinden. Dies
stellt sicher, dass jemand nicht das Root-Passwort aus dem Netzwerk erraten kann.
Root-Login aus der Ferne nicht zulassen? [J/n] <– ENTER
… Erfolg!
Standardmäßig wird MySQL mit einer Datenbank namens „test“ geliefert, die jeder nutzen kann
Zugriff. Dies dient auch nur zu Testzwecken und sollte entfernt werden
bevor Sie in eine Produktionsumgebung wechseln.
Testdatenbank und Zugriff darauf entfernen? [J/n] <– ENTER
– Testdatenbank wird gelöscht…
… Erfolg!
– Berechtigungen für Testdatenbank entfernen…
… Erfolg!
Das Neuladen der Berechtigungstabellen stellt sicher, dass alle bisher vorgenommenen Änderungen
tritt sofort in Kraft.
Berechtigungstabellen jetzt neu laden? [J/n] <– ENTER
… Erfolg!
Aufräumen …
Alles erledigt! Wenn Sie alle obigen Schritte durchgeführt haben, Ihr MySQL
die Installation sollte jetzt sicher sein.
Danke, dass Sie MySQL verwenden!
Installation von PHP5:
Als nächstes installieren Sie PHP 5 auf Fedora mit FastCGI, Fedora stellt ein FastCGI-fähiges PHP5-Paket bereit. Wir können installieren, indem wir den folgenden Befehl ausgeben.
[root@geeksite~/]# yum install php-cli lighttpd-fastcgi
Konfigurieren von PHP 5:
Um PHP5 in Lighttpd zu aktivieren, müssen Sie die Konfigurationsdatei /etc/php5/cgi/php.ini ändern und die Zeile cgi.fix_pathinfo=1: auskommentieren
[root@ubuntu~/]# vi /etc/php5/cgi/php.ini
[…]
; um SCRIPT_FILENAME anstelle von PATH_TRANSLATED zu verwenden.
; http://php.net/cgi.fix-pathinfo
cgi.fix_pathinfo=1
[...]
FastCGI aktivieren:
Um FastCGI zu aktivieren, müssen wir die folgende Datei bearbeiten.
[root@geeksite~/]# vi /etc/lighttpd/modules.conf
Entkommentieren Sie die Zeile [Line No:132].
include "conf.d/fastcgi.conf"
Erstellen und aktivieren Sie die Berechtigung zum Ausführen von Lighttpd.
[root@geeksite~/]# mkdir /var/run/lighttpd [root@geeksite~/]# chown lighttpd.lighttpd /var/run/lighttpd
Bearbeiten Sie die folgende Datei, um FastCGI zu konfigurieren.
[root@geeksite~/]# vi /etc/lighttpd/conf.d/fastcgi.conf
Fügen Sie die folgenden Zeilen am Ende der Datei hinzu.
fastcgi.server = ( ".php" => ( "localhost" => ( "socket" => "/var/run/lighttpd/php-fastcgi.socket", "bin-path" => "/usr/bin/php-cgi", "max-procs" => 5, "bin-environment" => ( "PHP_FCGI_CHILDREN" => "16", "PHP_FCGI_MAX_REQUESTS" => "10000" ), "broken-scriptfilename" => "enable" ) ) )
Starten Sie nun alle erforderlichen Dienste neu.
[root@geeksite~/]# systemctl restart lighttpd.service [root@geeksite~/]# systemctl restart mysqld.service
Testen von PHP:
Legen Sie zum Testen von PHP eine PHP-Datei im Standardverzeichnis des Lighttpd ab. Das Dokumentenstammverzeichnis der Standardwebsite ist /var/www/lighttpd . In diesem Verzeichnis erstellen wir nun eine kleine PHP-Datei (info.php) und rufen sie in einem Browser auf. Die Datei zeigt viele nützliche Details über unsere PHP-Installation an, wie z. B. die installierte PHP-Version.
Kopieren Sie im Terminal die folgende Zeile:
[root@geeksite~/]# vi /var/www/lighttpd/info.php
Dadurch wird eine Datei namens info.php geöffnet .
Kopieren Sie diese Zeile und fügen Sie sie in die phpinfo-Datei ein:
<?php
phpinfo();
?>
Speichern und schließen Sie die Datei. verwenden Sie Esc +;wq zum Speichern der Datei.
Öffnen Sie nun Ihren Webbrowser und geben Sie Folgendes in die Webadresse ein:
http://localhost/info.php or http://your.ip.add-ress/info.php
Die Seite sieht wie folgt aus:
Scrollen Sie im Browser nach unten zum Modulbereich, um die Unterstützung für MySQL zu überprüfen. Sie erhalten den Bildschirm wie unten.
Das ist alles!
Danksagungen:
Vielen Dank an Christian Foronda für die Bereitstellung der FastCGI-Konfiguration.