• Teilen
  • Bookmark "LAMP" auf del.icio.us
  • Bookmark "LAMP" auf Digg
  • Bookmark "LAMP" auf Reddit
  • Bookmark "LAMP" auf StumbleUpon
  • Bookmark "LAMP" auf Facebook
  • Bookmark "LAMP" auf Twitter
  • Bookmark "LAMP" auf Slashdot

LAMP

LAMP steht für Linux Apache MySQL PHP (wobei das P auch für andere Skriptsprachen stehen kann → Python, Perl) und besteht folglich aus diesen Komponenten:

  • einem Linux Betriebssystem,
  • dem Apache Webserver,
  • der Datenbank MySQL
  • und der Skriptsprache PHP

Als zusätzliches Hilfsmittel wird hier phpMyAdmin installiert, was die Verwaltung von MySQl unglaublich vereinfacht. In dieser Anleitung geht es darum so schnell wie möglich einen LAMP aufzusetzen. Eine ausführliche Anleitung zur Konfiguration der Komponenten existiert zu Apache, MySQL und phpMyAdmin.

Softwarevoraussetzungen: Paketveraltung | Texteditor
Schwierigkeitsgrad: Einfach
Ausgetestet mit folgenden Betriebssystemen: Ubuntu | Debian | teilweise auch andere Distributionen

Achtung! sudo: In dieser Anleitung verdeutlicht der Befehl sudo, dass die folgende Codezeile mit Root-Rechten ausgeführt werden muss. In normalen Ubuntu Installationen (Root-/VServer siehe Debian) kann dies durch den Befehl sudo erreicht werden.
Bei Debian wird bei der Installation ein Passwort für den Root-Benutzer festgelegt, so kann man sich entweder direkt als Root oder als „normaler“ Benutzer mit Eingabe von su als Root einloggen (Root-Passwort benötigt) → sudo bleibt dann überflüssig!

Installation der benötigten Komponenten

Benötigte Pakete

Folgende Pakete werden benötigt:

apache2               # Apache2 Webserver
apache2-doc      
mysql-server          # MySQL
libapache2-mod-php5   # Apache PHP Modul
phpmyadmin            # Tool um MySQL zu verwalten
php5                  # PHP
php5-mysql            # Zugriff für PHP auf MySQL

Diese installieren wir mit:

user@server:~$ sudo apt-get install apache2 apache2-doc mysql-server phpmyadmin php5 libapache2-mod-php5 php5-mysql

→ Bei der Installation wird man nach dem Webserver gefragt, hier wählen wir Apache2. Außerdem kann es vorkommen, dass die Zugangsdaten für den MySQL-Benutzer root verlangt werden.

Einrichtung

Rechte für Apache anpassen

Nach der Installation passen wir vorsichtshalber die Rechte des Standard roots an:

user@server:~$ sudo chmod 0775 /var/www           # ändert die rechte von /var/www
user@server:~$ sudo chgrp -R www-data /var/www    # gibt /var/www der gruppe www-data

und fügen unseren Benutzer der Gruppe www-data hinzu:

user@server:~$ sudo adduser BENUTZER www-data      # BENUTZER durch den Benutzernamen ersetzen unter dem man normalerweise den Server administriert

PHP aktivieren

Unter Umständen muss noch das PHP Modul für Apache aktiviert werden:

user@server:~$ sudo a2enmod php5 

Apache Hostname eintragen

In der /etc/apache2/apache2.conf sollte noch der Hostname eingetragen werden.

user@server:~$ sudo nano /etc/apache2/apache2.conf

Am Anfang der Datei einfach folgendes hinzufügen:

#localhost kann auch durch eine IP oder Domain ersetzt werden
ServerName localhost    

Achtung! Kommentare (#) hinter dem Servernamen verursachen unter Umständen Fehlermeldungen! - Auf folgendes also verzichten:

ServerName localhost  # Kommentar zu localhost

…statt dessen so:

# Kommentar zu localhost
ServerName localhost  

Erweiterungen

PHP Erweiterungen

Für PHP gibt es zahlreiche Erweiterungen. Hier eine Übersicht (Quelle: ubuntuusers.de):

php5-cgi       # für CGI-Skripte
php5-curl      # cURL-Unterstützung 
php5-gd        # Bilder generieren und manipulieren
php5-imagick   # ImageMagick Unterstützung
php5-imap      # IMAP-Unterstützung
php5-pgsql     # Unterstützung von PostgreSQL
php5-sqlite3   # Unterstützung von sqlite3

Um diese einzusetzen die jeweiligen Pakete (Name der Erweiterung = Paket zum Installieren) installieren.

Apache Erweiterung

Auch für Apache gibt es Erweiterungen. Diese werden mods genannt.
Hier im Wiki ist der mod Webdav näher erläutert:

Natürlich gibt es zahlreiche mehr - am Besten kann man sich über diese informieren, wenn man in der Paketverwaltung (Synaptic) nach libapache2-mod sucht und die Informationen zu den einzelnen Paketen durchliest.
Nach der Installation des Mods sollte man jenen noch aktivieren und Apache neustarten:

user@server:~$ sudo apt-get install libapache2-mod-modname     # Installation eines Mods; "modname" durch den Namen des Mods ersetzten
user@server:~$ sudo a2enmod modname                            # Aktivieren des Mods; "modname" durch den Namen des Mods ersetzten
user@server:~$ sudo /etc/init.d/apache2 restart                # Apache neustarten

Verwaltung

MySQL Root Passwort

Bei der Installation von MySQL wird man normalerweise nach einem Passwort für den Benutzer root gefragt. Hier genügt ein beliebiges Passwort. Über dieses greift man später auf phpmyadmin zurück und legt weitere Benutzer und Datenbanken für Webanwendungen an.
Falls man das Passwort ändern möchte genügt folgender Befehl:

user@server:~$ mysqladmin -u root -ppassword "PASSWORT"    # PASSWORT durch Wunschpasswort ersetzen; auf "" achten!
# -ppassword ist so gewollt! password durch bisheriges Passwort ersetzten

Anschließend wird man nach einem Passwort gefragt. Hier muss man das alte Passwort einsetzten, falls noch keines gesetzt wurde genügt die Eingabetaste.

phpMyAdmin

Um mySQL über ein Webinterface zu verwalten benötigt man phpMYadmin, welchen wir bereits schon installiert haben.
Nach einem Neustart des Apache Webservers

user@server:~$ sudo /etc/init.d/apache2 restart

können wir das Webinterface unter

http://ip_des_servers/phpmyadmin   # ip_des_servers durch die IP unseres Webservers ersetzen

erreichen. Einloggen kann man sich nun mit den vorher (mySQl root Passwort) festgelegten Benutzerdaten einloggen (root/festgelegtes Passwort).

Sollte das Webinterface nicht erreichbar sein, so ist die Konfiguration für phpMyAdmin während der Installation nicht automatisch nach /etc/apache2/conf.d/ (seit Ubuntu 13.10: /etc/apache2/conf-enabled) verlinkt worden, dies kann nachträglich so erledigt werden:

user@server:~$ sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d/phpmyadmin.conf
user@server:~$ sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-enabled/phpmyadmin.conf        # ab Ubuntu 13.10

Anschließend muss Apache wieder neu gestartet werden:

user@server:~$ sudo /etc/init.d/apache2 restart

Dienste neustarten

Nachdem alles vollendet ist sollte man die Dienste neustarten.

user@server:~$ sudo /etc/init.d/apache2 restart      # Apache neustarten
user@server:~$ sudo /etc/init.d/mysql restart        # MySQL neustarten

Eine schnellere Alternative wäre ein reload oder force-reload, bei kleineren Änderungen reichen diese oftmals schon aus.

user@server:~$ sudo /etc/init.d/apache2 reload         # Apache reload
user@server:~$ sudo /etc/init.d/apache2 force-reload   # Apache force-reload
user@server:~$ sudo /etc/init.d/mysql reload           # MySQL reload
user@server:~$ sudo /etc/init.d/mysql force-reload     # MySQL force-reload

weitere Optionen lassen sich über einfaches Aufrufen des init.d Skriptes ohne nachfolgende Parameter erfahren.

Nach Ändern der Konfigurationsdateien müssen an den jew. Dienste mindestens ein force-reload vollzogen werden (bei Änderungen an Apache muss dies natürlich nur an jenem erfolgen und nicht bei MySQL).



chrisge 2014/07/19 21:13

Diskussion

sebstaGuest, 2014/07/18 11:13

zu: „Sollte das Webinterface nicht erreichbar sein, so ist die Konfiguration für phpMyAdmin während der Installation nicht automatisch nach /etc/apache2/conf.d/ verlinkt worden, dies kann nachträglich so erledigt werden:

user@server:~$ sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d/phpmyadmin.conf“

sollte evtl der aktuelle conf Pfad ergänzt werden “/etc/apache2/conf-enabled/“

LG S

Christoph Winklerchrisge, 2014/07/19 21:23

Vielen Dank für den Hinweis! Habs angepasst, die Ordnerstruktur hat sich in Saucy (Apache 2.4) geändert.

netixGuest, 2015/01/29 18:04

Ein ganz dickes Dankeschön für diese Anleitung und auch die für owncloud; super gemacht. Ich hatte schon Stunden mit anderen Versuchen verbracht, Danke!

Christoph Winklerchrisge, 2015/01/29 19:19

Freut mich, dass die Anleitungen dir geholfen haben :-)

Geben Sie Ihren Kommentar ein. Wiki-Syntax ist zugelassen:
PJUNL
 
  • Teilen
  • Bookmark "LAMP" auf del.icio.us
  • Bookmark "LAMP" auf Digg
  • Bookmark "LAMP" auf Reddit
  • Bookmark "LAMP" auf StumbleUpon
  • Bookmark "LAMP" auf Facebook
  • Bookmark "LAMP" auf Twitter
  • Bookmark "LAMP" auf Slashdot
Sonstiges
Drucken/exportieren
Archiv

Archivierter Inhalt der alten Seite