Wieder in Mode ist LAMP, seit das XAMPP-Projekt vom Datenbanksystem MySQL auf MariaDB umgestellt hat. Das Problem: WordPress lässt sich zwar auch mit MariaDB installieren, aber die meisten Provider bieten nur MySQL an. Die Lösung heißt LAMP. Was steckt da drin: LAMP steht für
- L wie Linux
- A wie Apache
- M wie MySQL
- P wie PHP
Wer braucht LAMP?
- Webmaster, die ihre WordPress-Installation auf einem lokalen System sichern, spiegeln oder bearbeiten möchten. Natürlich funktioniert das auch mit anderen Systemen wie Joomla, Drupal oder Typo3.
- Betreiber eines eigenen Root-Servers. LAMP-Kenntnisse sind da einfach Pflicht! Wer Server-Admin werden will, geht mit LAMP in die Lehre!
Alternativen zu LAMP
Dir ist jetzt schon schwindelig? Dann nimm MAMP, du Weichei! Du willst was lernen? Dann lies weiter… 😉
Inhalt
LAMP Installation
Vorüberlegung: Wer die Ubuntu Server Edition verwendet, hat den LAMP-Server schon integriert. Allerdings wird dieses Ubuntu-Flavour ohne grafische Oberfläche ausgeliefert, der Einstieg verlangt ist also für Neulinge nicht ganz ohne! Die Alternative: einen LAMP auf einem ganz normalen Ubuntu– oder Debian-System installieren.
Das folgende Tutorial wurde auf einem Lubuntu-System ausgeführt, funktioniert aber auf allen Ubuntu und Debian-Systemen gleich.
Apache Installation
Es geht los. Gehe ins Ubuntu Terminal und mach‘ der Paketverwaltung Beine! Gib für die Installation des Apache-Servers folgendes ein:
sudo apt-get install apache2
Jetzt wird der Apache heruntergeladen und installiert. Genauer gesagt der apache2, denn die 1.x Versionen sind überholt. Dann überprüfe die Installation des Apachen mit den Befehlen Start, Stop und Restart. Dazu gebe ins Terminal ein:
sudo /etc/init.d/apache2 start sudo /etc/init.d/apache2 stop sudo /etc/init.d/apache2 restart
init.d bedeutet Initialisiere den daimon (=Dienst). Nun läuft der Server auf dem eigenen lokalen Rechner = localhost. Rufe den localhost über diese Adresse im Browser auf:
http://localhost
Wenn jetzt im Browser eine Webseite angezeigt wird, auf der so etwas wie „it works“ oder „es funktioniert“ steht, dann ist der erste Schritt schonmal geschafft. Der Apache läuft, und wir surfen diesmal nicht in den Weiten des Internet, sondern daheim auf dem eigenen Server! Den www-Ordner deines lokalen Apache-Servers findest du innerhalb des Ubuntu – Verzeichnissystems an dieser Stelle:
/var/www/html
Hier liegen später deine selbst erstellten Webseiten innerhalb deines lokalen LAMP-Servers! Bisher ist nur einzige Datei darin enthalten, nämlich eine HTML-Datei, die das „It Works“ anzeigt.
PHP Installation
Der Apache läuft, jetzt kommt PHP dazu. Gib ins Terminal ein:
sudo apt-get install php7.0 libapache2-mod-php7.0
PHP wird nun installiert. Danach muss der Apache neu gestartet werden, um das PHP aufzunehmen. Gib ins Terminal ein:
sudo /etc/init.d/apache2 restart
Nun lege eine Testseite an, um die Funktion und Version von PHP zu überprüfen. Als Programm geht Bluefish, aber auch ein ganz einfacher Texteditor, wie gedit unter Gnome. Der gesamte Code der PHP-Testseite ist schnell geschreiben. Er lautet:
<?php
phpinfo();
?>
Nenne die PHP-Testseite test.php und speichern sie im www-Verzeichnis. Wie oben beschrieben liegt das Verzeichnis hier:
/var/www/html
So sollte die Testdatei jetzt abgespeichert sein:
/var/www/html/test.php
Hinweis: Falls das Speichern in das Verzeichnis /var/www nicht funktioniert, siehe diese Anleitung zur Rechteänderung
Jetzt rufe die Testdatei im Browser auf:
http://localhost/test.php
Hier müsste nun sowas stehen wie „PHP Version 7“
MySQL Installation
Gehe wieder ins Terminal und halte Zettel und Stift bereit, denn MySQL verlangt die Vergabe eines eigenen root-Passworts!
Das ist bitte nicht zu verwechseln mit dem root-Passwort des Ubuntu-Systems. Hier geht es nur um ein MySQL-Passwort. Denk dir also was Neues aus: ********
Hinweis: Es bringt nichts, das Passwordfeld einfach leer zu lassen; es kann sein, dass du dann MySQL und phpmyadmin neu aufsetzen musst. Ich weiß es aus Erfahrung 😉
Gib ins Terminal ein:
sudo apt-get install mysql-server php7-mysql mysql-client
Auch hier folgt ein Funktionstest mit Restart. Gib ins Terminal ein (die letzte Zeile mit dem Restart genügt in der Regel auch):
sudo /etc/init.d/mysql start sudo /etc/init.d/mysql stop sudo /etc/init.d/mysql restart
phpMyAdmin Installation
Jetzt fehlt noch die grafische Oberfläche für SQL. Installiere phpmyadmin für apache2! Gib ins Terminal ein:
sudo apt-get install libapache2-mod-auth-mysql phpmyadmin
phpMyAdmin erreichbar?
Gib in den Browser ein:
http://localhost/phpmyadmin
Im positiven Fall verlangt erscheint phpmyadmin. Dann überspringe Punkt 6!
phpMyAdmin Verknüpfung
Wenn du bei Punkt 5 keine phpadmin-Oberfläche gesehen hast, muss phpmyadmin noch richtig verknüpft werden. Gehe dazu ins Verzeichnis /var/www/html. Gib dazu im Terminal ein:
cd /var/www/html
Lege dort einen symbolischen Link. Gib dazu im Terminal ein:
sudo ln -s /usr/share/phpmyadmin/
phpmyadmin kannst du nun im Browser aufrufen:
http://localhost/phpmyadmin
phpMyAdmin Zugangsdaten
phpmyadmin verlangt nun die Zugangsdaten!
Benutzername: root
Passwort: Das Passwort hast du bei der MySQL-Installation notiert
LAMP installiert
Und fertig ist der LAMP. Nochmal die Einsatzmöglickeiten:
- Übung für künftige Root-Server-Admins. LAMP ist ein guter Einstieg!
- PHP-Seiten lokal und offline testen: WordPress, Joomla, Drupal … alle CMS, die auf der Basis von PHP oder PHP+MySQL funktionieren!
LAMP Konfiguration via php.ini
Der Import großer Datenbanken kann in einem unveränderten LAMP daran scheitern, dass die in der Datei php.ini eingestellten Obergrenzen für das PHP Memory Limit, Max Filesize, Max Execution Time und Post Max Size zu schwach eingestellt sind. Hier mal ein paar Beispiel-Werte:
memory_limit = 128M;
upload_max_filesize = 16M;
max_execution_time = 50000;
post_max_size = 100M;
file_uploads = On;
Ist deine Datenbank nun größer als 16MB, dann kann sie mit den oben eingestellten Werten geladen werden. Lösung: Werte erhöhen!
Die Datei php.ini liegt als versteckte Datei in:
etc/php5/apache2/php.ini – falls die Datei nicht beschreibbar ist, musst du zunächst die Rechte ändern.