Webserver · 3 min read · Feb 08, 2026

Installation von Nginx mit PHP5- und MySQL-Unterstützung auf Debian Etch

Installation von Nginx mit PHP5- und MySQL-Unterstützung auf Debian Etch

Version 1.0
Autor: Falko Timme

Nginx (ausgesprochen “engine x”) ist ein kostenloser, Open-Source, leistungsstarker HTTP-Server. Nginx ist bekannt für seine Stabilität, seinen umfangreichen Funktionsumfang, die einfache Konfiguration und den geringen Ressourcenverbrauch. Dieses Tutorial zeigt, wie Sie Nginx auf einem Debian Etch-Server mit PHP5-Unterstützung (über FastCGI) und MySQL-Unterstützung installieren können.

Ich gebe keine Garantie, dass dies bei Ihnen funktioniert!

1 Vorbemerkung

In diesem Tutorial verwende ich den Hostnamen server1.example.com mit der IP-Adresse 192.168.0.100. Diese Einstellungen können bei Ihnen abweichen, daher müssen Sie sie gegebenenfalls anpassen.

Ich habe diesen Leitfaden aus drei verschiedenen Quellen zusammengestellt und meine eigenen Ergänzungen hinzugefügt:

  • Debian Etch - Nginx installieren von Slicehost
  • Debian Etch - Hinzufügen eines Nginx-Init-Skripts von Slicehost
  • Init-Skript für php-cgi im externen FASTCGI-Modus (Daemon-Modus) von Kurt Zankl

2 Installation von MySQL 5.0

Zuerst installieren wir MySQL 5.0 so:

apt-get install mysql-server mysql-client

Erstellen Sie ein Passwort für den MySQL-Benutzer root (ersetzen Sie yourrootsqlpassword durch das Passwort, das Sie verwenden möchten):

mysqladmin -u root password yourrootsqlpassword

Überprüfen Sie dann mit

netstat -tap | grep mysql

auf welchen Adressen MySQL hört. Wenn die Ausgabe so aussieht:

tcp        0      0 localhost.localdo:mysql *:*                     LISTEN     2713/mysqld

was bedeutet, dass MySQL nur auf localhost.localdomain hört, dann sind Sie mit dem Passwort, das Sie zuvor festgelegt haben, auf der sicheren Seite. Aber wenn die Ausgabe so aussieht:

tcp        0      0 *:mysql *:*                     LISTEN     2713/mysqld

sollten Sie auch ein MySQL-Passwort für Ihren Hostnamen festlegen, da sonst jeder auf Ihre Datenbank zugreifen und Daten ändern kann:

mysqladmin -h server1.example.com -u root password yourrootsqlpassword

3 Installation von Nginx

Nginx ist als Paket für Debian Etch verfügbar, aber es ist veraltet (Version 0.4.13), während die neueste stabile Version 0.6.34 ist. Daher baue ich Nginx aus den Quellen.

Zuerst installieren wir einige Voraussetzungen:

apt-get install libpcre3 libpcre3-dev libpcrecpp0 libssl-dev zlib1g-dev build-essential

Dann laden wir Nginx herunter und entpacken es (die neueste stabile Version finden Sie auf http://nginx.net/):

cd /tmp  
wget http://sysoev.ru/nginx/nginx-0.6.34.tar.gz  
tar xvfz nginx-0.6.34.tar.gz  
cd nginx-0.6.34

Sie können

./configure --help

ausführen, um sich über alle Konfigurationsoptionen zu informieren.

Ich verwende die folgende Konfigurationsanweisung…

./configure --sbin-path=/usr/local/sbin --with-http_ssl_module

… und führe dann

make  
make install

aus, um die Installation abzuschließen.

Dies erstellt das Verzeichnis /usr/local/nginx, das die Konfigurationsdateien, Protokolle und die Standard-Website (in /usr/local/nginx/html) enthält.

Als nächstes erstellen wir das Nginx-Init-Skript:

vi /etc/init.d/nginx

| #! /bin/sh ### BEGIN INIT INFO # Provides: nginx # Required-Start: $all # Required-Stop: $all # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: startet den Nginx-Webserver # Description: startet Nginx mit start-stop-daemon ### END INIT INFO PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/local/sbin/nginx NAME=nginx DESC=nginx test -x $DAEMON || exit 0 # Nginx-Standardeinstellungen einfügen, falls verfügbar if [ -f /etc/default/nginx ] ; then . /etc/default/nginx fi set -e case "$1" in start) echo -n "Starte $DESC: " start-stop-daemon --start --quiet --pidfile /usr/local/nginx/logs/nginx.pid --exec $DAEMON -- $DAEMON_OPTS echo "$NAME." ;; stop) echo -n "Stoppe $DESC: " start-stop-daemon --stop --quiet --pidfile /usr/local/nginx/logs/nginx.pid --exec $DAEMON echo "$NAME." ;; restart|force-reload) echo -n "Starte $DESC neu: " start-stop-daemon --stop --quiet --pidfile /usr/local/nginx/logs/nginx.pid --exec $DAEMON sleep 1 start-stop-daemon --start --quiet --pidfile /usr/local/nginx/logs/nginx.pid --exec $DAEMON -- $DAEMON_OPTS echo "$NAME." ;; reload) echo -n "Lade $DESC-Konfiguration neu: " start-stop-daemon --stop --signal HUP --quiet --pidfile /usr/local/nginx/logs/nginx.pid --exec $DAEMON echo "$NAME." ;; *) N=/etc/init.d/$NAME echo "Verwendung: $N {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0 |

Machen Sie die Datei ausführbar und starten Sie Nginx:

chmod 755 /etc/init.d/nginx  
/etc/init.d/nginx start

Geben Sie die IP-Adresse oder den Hostnamen Ihres Webservers in einen Browser ein (z. B. http://192.168.0.100), und Sie sollten die Nginx-Startseite sehen:

Um Nginx beim Booten zu starten, führen Sie aus:

update-rc.d nginx defaults
Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.