Lokalen Webserver einrichten und verwenden XAMPP ❘ WAMP (Tutorial)

[Bildschirmfoto] Lokalen Webserver einrichten und verwenden

Um PHP-Scripte auszuführen benötigt man einen Webserver. Um nun nicht jede Datei zum testen erst per FTP auf seinen Webserver zu laden ist es sinnvoll, sich Lokal auf dem eigenen Rechner einen sogenannten lokalen Webserver (zum Beispiel: XAMPP) zu installieren.
Dieser simuliert die Internetumgebung und ermöglicht es Ihnen, Ihre Webseiten so zu betrachten als stünden diese "Online" im Internet.

Was ist XAMPP?

XAMPP ist eine Zusammenstellung von freier Software.
XAMPP ist eine Distribution von Apache, MySQL, PHP und Perl, die es ermöglicht diese Programme auf sehr einfache Weise zu installieren. Das X in XAMPP steht hierbei für die verschiedenen Betriebssysteme, auf denen es eingesetzt werden kann.

➤ Der Lokale Webserver XAMPP eignet sich für Anfänger und Fortgeschrittene. Für Profis ist der lokale Webserver WAMP die bessere Wahl.

Wozu dient XAMPP?

XAMPP ermöglicht das einfache Installieren und Konfigurieren des Webservers Apache mit der Datenbank MySQL und den Skriptsprachen PHP und Perl. XAMPP ist für den Entwickler gedacht, der möglichst schnell ein kompaktes Testsystem aufsetzen möchte.

Wie installiere ich XAMPP?

Als Beispiel wird hier eine Schritt-für-Schritt-Anleitung für das Einrichten eines XAMPP-Servers (Installation unter Windows) näher beschreiben.

1. Laden Sie die Datei „XAMPP” herunter » apachefriends.org/de/index.html (kostenlos)
Am bequemsten ist es, wenn Sie die Installer-Version (selbst-installierende EXE) herunterladen.

XAMPP für Windows (ab Windows 7) gibt es nur als 32-Bit Version. Am besten ist es die XAMPP-Version 8.2.18 oder höher herunter zu laden.

➤ Hilfe für XAMPP finden Sie in diesem Forum: community.apachefriends.org

2. Starten Sie die Datei um diese zu extrahieren. Wählen Sie ein Verzeichnis aus. Am sichersten ist es, wenn XAMPP direkt nach c:\xampp installiert wird.

Bei der Installation können Sie auch gleich auswählen, ob Sie einen der angeboteten Server als Dienst laufen lassen wollen. Hiermit läuft z.B. der Apache stets im Hintergrund und wird beim Hochfahren des PCs automatisch gestartet.

Nach der Installation wird automatisch das XAMPP Control Panel gestartet.

3. Nun sollte rechts unten auf dem Desktop ein Fenster erscheinen, wie auf dem Bild rechts zu sehen.
Ist dies nicht der Fall, so gehen Sie auf die Schnellleiste und klicken auf das XAMPP-Symbol.

Als nächstes starten Sie den Webserver Apache und die Datenbank MySQL. Nach diesem Vorgang sollten Apache und MySQL grün aufleuchten (siehe Bild).

Wo lege ich meine Daten ab?

4. Wechseln Sie nun in das Verzeichnis, indem Sie XAMPP entpackt haben, gehen Sie dann in das Unterverzeichnis: xampp\htdocs. In diesem Verzeichnis legen Sie ein Verzeichnis (Ordner) an, wir nennen dieses beispielsweise: homepage.

5. Öffnen Sie einen Texteditor (z.B.: Notepad++ » notepad-plus.sourceforge.net (kostenlos))
und schreiben Sie folgendes hinein:

<?php
 
echo "Hallo Welt!";
?>

Speichern Sie nun die Datei im Verzeichnis: homepage mit dem Dateinamen: test.php

Öffnen Sie den Browser und geben Sie folgendes in die Adresszeile ein:
http://localhost/homepage/test.php und drücken die Eingabetaste.
Nun sollte im Browserfenster "Hallo Welt!" stehen.

Konfiguration von XAMPP (Dashboard)

Klicken Sie im XAMPP Control Panel auf:



Oder geben Sie folgendes in den Browser ein:
http://localhost/dashboard

Konfiguration der Datenbank

phpMyAdmin ist ein in PHP geschriebenes Werkzeug, das zur Administration von MySQL-Datenbanken über das Web gedacht ist. Es bietet die Möglichkeit, Datenbanken zu erstellen und zu löschen, Tabellen und Spalten zu erstellen, zu löschen oder zu ändern, Indizes von Spalten zu verwalten und SQL-Anweisungen auszuführen.

Klicken Sie im XAMPP Control Panel auf:



Oder geben Sie folgendes in den Browser ein:
http://localhost/phpmyadmin

Hier können Sie nun einen Benutzernamen erstellen, eine eigene Datenbank oder Datenbanktabelle erstellen und konfigurieren.

Zugriff zur Datenbank mit phpMyAdmin

Hier reicht (wenn nichts in den Benutzerkonten geändert wurde) als 1 Benutzername: root bereits aus um sich anzumelden.
Der Standard-Zugang zur MySQL-Datenbank ist:
Host: localhost
Benutzername: root
Passwort: (leer, es ist kein Passwort gesetzt)
Datenbank: test (ist bereits angelegt)

Verbindung zur Datenbank mit PHP


<?php

// Verbindung zur Datenbank über der PDO()-Funktion aufbauen
// (Host, Datenbank, Charset, Benutzer, Passwort)
$db = new PDO("mysql:host=localhost;dbname=test;charset=utf8""root""");

// Verbindung zur Datenbank über der mysqli()-Funktion aufbauen
// (Host, Benutzer, Passwort, Datenbank)
$db = new mysqli("localhost""root""""test");
?>

Wie kann ich eine Datenbank anlegen?

Bei XAMPP existiert bereits eine Datenbank, mit der man testen kann, der Name lautet test. Nachfolgend zeige ich wie das anlegen einer Datenbank grundsätzlich abläuft.

Klicken Sie den Registerreiter (Tab) Datenbanken an 1
Tragen Sie einen Datenbanknamen ein 2, wählen Sie in der Auswahlliste: utf8_general_ci aus 3 und klicken Sie auf Anlegen 4.

Wie kann ich eine Datenbank-Tabelle anlegen?

Klicken Sie auf dem Namen der Datenbank die Sie gerade erstellt haben test 1. Tragen Sie den Namen der Datenbank-Tabelle ein 2. Wählen Sie die Anzahl der Spalten aus 3 und klicken auf OK 4.
Hier geben Sie nun jeder Spalte der Tabelle einen Namen 1, wählen den passenden Typ 2 aus und geben dessen (je nach Spaltentyp) Länge 3 und Kollation an 4. Um die Tabelle nun anzulegen klicken Sie auf Speichern 5

Jetzt ist die Datenbank-Tabelle angelegt, mit PHP und MySQL können Sie nun auf die Tabelle zugreifen, mehr dazu erfahren Sie unter: Erster Eintrag in eine MySQL-Datenbank mit PHP

Tipps und Probleme beheben

XAMPP Control Panel immer als: Administrator ausführen

Windows 10

[Bildschirmfoto] XAMPP immer als Administrator ausführen (Windows 10)

Windows 11

[Bildschirmfoto] XAMPP immer als Administrator ausführen (Windows 11)

➤ Es gibt auch die Möglichkeit in den Ordner: "xampp" zu gehen und dort die Datei: "xampp-control.exe" mit der rechten Maustaste anzuklicken (Kontextmenü) und die Eigenschaften aufzurufen, im Registerreiter: "Kompatibilität" die Checkbox: "Programm als Administrator ausführen" markieren. Und auf dem Button: "Übernehmen" klicken.
• Bei jedem aufrufen des Programms wird dieses nun automatisch als Administrator gestartet.

Apache und MySQL als Windows Dienst starten

Apache und MySQL können als Windows Dienst automatisch gestartet werden. Dazu muss das Datei: "xampp-control.exe" (einmalig) als Administrator ausgeführt werden (siehe weiter oben). Und es müssen die zwei Checkboxen im XAMPP Control Panel ausgewählt werden.

[Bildschirmfoto] Apache und MySQL als Windows Dienst starten

GD-Grafikbibliothek in XAMPP aktivieren

Warum auch immer, standartmäßig ist die GD-Grafikbibliothek in XAMPP deaktiviert.

  1. Öffnen Sie die Datei: "php.ini" im XAMPP Control Panel.
    [Bildschirmfoto] GD-Grafikbibliothek in XAMPP aktivieren
  2. Gehen Sie in der Textdatei zur Zeile ;extension=gd und entfernen den Strichpunkt ; davor.
    [Bildschirmfoto] Datei: php.ini
  3. Datei speichern und Apache neu starten.

PHP-Fehlermeldung: Got a packet bigger than 'max_allowed_packet' bytes beheben

  1. Öffnen Sie die Datei: "my.ini" im XAMPP Control Panel.
  2. Gehen Sie in der Textdatei zum ersten Eintrag von: max_allowed_packet
  3. Ändern Sie den Wert auf: max_allowed_packet=100M
  4. Datei speichern und MySQL neu starten.

Maximal zulässige Größe für hochgeladene Dateien erhöhen

  1. Öffnen Sie die Datei: "php.ini" im XAMPP Control Panel.
  2. Gehen Sie in der Textdatei zum Eintrag: upload_max_filesize
  3. Ändern Sie den Wert auf z.B: upload_max_filesize=80M
  4. Datei speichern und Apache neu starten.

➤ Bei manchen Providern (z. B.: Ionos, 1&1) ist es möglich, eine: "php.ini"-Datei in ein Verzeichnis abzulegen (indem die Änderungen wirken sollen) und die Angabe: upload_max_filesize=120M einzutragen.

Sendmail aktivieren (E-Mail versandt lokal testen)

  1. Öffnen Sie die Datei: "php.ini" im XAMPP Control Panel.
  2. Gehen Sie in der Textdatei zum Eintrag: ;sendmail_path
  3. Ändern Sie das in: sendmail_path = "C:\xampp\mailtodisk\mailtodisk.exe"
  4. Datei speichern und Apache neu starten.

Die gesendeten E-Mails liegen jetzt im Verzeichnis: C:\xampp\mailoutput

PHP-Fehlermeldungen besser hervorheben

  1. Öffnen Sie die Datei: "php.ini" im XAMPP Control Panel.
  2. Gehen Sie in der Textdatei zum Eintrag: error_prepend_string
    Ändern Sie diesen wie folgt:
    error_prepend_string = "<div style='font-family: Verdana, arial; font-size: 1rem; color: #FFFFFF; background-color: #000000; padding: 10px; outline: solid 3px #FF0000; z-index: 100000;'><strong>PHP-Fehlermeldung!</strong>"
  3. und
    error_append_string = "</div>"
  4. Datei speichern und Apache neu starten.

Beispiel-Ausgabe:

PHP-Fehlermeldung!
Warning: include(../header.php): Failed to open stream: No such file or directory in C:\xampp\htdocs\index.php on line 8

Überlauf-Problem in MySQL beheben

  1. Benenne den Ordner: mysql / data in mysql / data_old um (es kann auch ein beliebiger Name verwendet werden).
  2. Erstelle einen neuen Ordner: mysql / data
  3. Kopiere den Inhalt von: mysql / backup in den neuen Ordner: mysql / data
  4. Kopiere alle Datenbankordner in: mysql / data_old nach: mysql / data (Überspringen der Ordner: mysql, performance_schema und phpmyadmin von data_old)
  5. Kopiere abschließend die Datei: ibdata1 aus mysql / data_old und ersetze sie im Ordner: mysql / data
  6. Starte: MySQL über das XAMPP Control Panel.

Quelle: https://community.apachefriends.org

❗ Möglicherweise muss ein neuer Datenbank-Benutzer in: phpMyAdmin angelegt werden.

Perl-Programm in XAMPP ausführen

#!C:\xampp\perl\bin\perl.exe -w
# Die obige Zeile ist perl Ausführungspfad in XAMPP
# Die "Shebang" ist die erste Zeile in einem Perl-Script und beginnt IMMER mit #! und ist der Pfad zu deinem Perl Interpreter.
# Das -w gewöhnst du dir gleich an. Damit schaltest du nämlich sämtliche Warnungen an, die dem Perl-Interpreter beim verarbeiten deines Quellcodes auffallen.

# Die folgende Zeile teilt dem Browser mit, dass dieses Skript HTML-Inhalte sendet.
# Wenn Sie diese Zeile fehlen, wird der Fehler "malformed header from script" angezeigt.
print "Content-type: text/html\n\n";
print "Hello world."

Datei im Verzeichnis: htdocs als "hello.cgi" oder "hello.pl" speichern.

Perl - Tutorial: https://www.cpan.org/authors/id/E/EI/EIKEG/doc/perl-tutorial-DE_2.02.pdf PDF-Datei (626 kb).