Installation und Konfiguration eines LAMP-Systems
Installation und Konfiguration eines LAMP-Systems.
Grundlagen: Was brauchen wir?
- Apache Webserver
- PHP 3 oder 4
- MySQL
Was noch?
- Grundlegende Linuxkenntnisse
- Programmiererfahrung
- Ein wenig Hirn...
Installation von MySQL
Bei fast allen Distributionen ist MySQ mit dabei und Sie müssen es nur aus den mitgelieferten Paketen installieren. Die folgenden Anweisungen zum Compilieren sind normalerweise unnötig. Um einen Datenbankserver mit höherer Performance zu erhalten, können Sie MySQL auch auf einem separaten Rechner installieren.
- Die Quellen von MySQL auf Ihr Linux-System kopieren und entpacken
- In das MySQL-Verzeichnis wechseln und MySQL mit
./configure
konfigurieren. Sie brauchen keine spezifischen Parameter anzugeben, außer Sie wollen die Datenbank noch irgendwie anpassen. - Nach dem Konfigurieren die Sourcen mit den Befehlen
make
undmake install
kompilieren. - Als letztes sollten Sie noch mit dem Befehl
mysql_install_db
MySQL seine grundlegenden Systemdatenbanken anlegen lassen.
Nun müssen wir noch dafür sorgen, daß der MySQL-Daemon beim Systemstart ausgeführt wird. Dazu sind folgende Schritte notwendig:
- Die Datei mysql.server aus dem Verzeichnis support-files in den MySQL-Quellen nach /etc/init.d kopieren
- Mit
chmod a+x mysql.server
die Datei ausführbar machen - In das Verzeichnis /etc/rc.d/rc3.d einen Startlink auf mysql.server anlegen (
ln -s /etc/rc.d/init.d/mysql.server /etc/rc.d/rc3.d/S98mysql
) - Einen Kill-Link für Runlevel 0 anlegen (
ln -s /etc/rc.d/init.d/mysql.server /etc/rc.d/rc0.d/K98mysql
) - Nun müsste MySQL nach einem Neustart ausgeführt werden. Überprüfen können Sie das mit
ps ax|grep mysqld
. Wenn Sie gerade keine Lust auf einen Neustart haben, geben Sie/etc/rc.d/init.d/mysql.server start
ein
Installation des Webservers Apache
Es kann natürlich sein, daß auf Ihrer Distribution Apache schon installiert ist, aber um das PHP-Modul zu laden, muß die DSO-Option aktviert sein, die das dynamische Laden von Modulen ermöglicht. Um herauszufinden, ob dies der Fall ist, geben Sie locate apxs
und httpd -l
ein. Falls die Datei apxs
bei Ihnen in einem anderen Verzeichnis als in den Apache-Quellen gefunden wird und das Programm httpd ein geladenes Modul mit dem Namen mod_so.c
anzeigt, haben Sie einen DSO-fähigen Apache installiert und können den folgenden Abschnitt überspringen.
- Die Quellen entpacken
- In das Unterverzeichnis der Apache-Quellen wechseln
- Das Skript
./configure
mit dem Parameter--enable-shared=max
ausführen. Wenn Sie wünschen, können Sie noch weitere Parameter angeben, dieser ist aber zwingend notwendig! - Mit
make
undmake install
den Webserver kompilieren und installieren. - Mit
./httpd
im Bin-Verzeichnis von Apache (z.B. /usr/local/apache/bin) müssten Sie nun den Webserver starten können. Kontrolle über ps ax|grep httpd.
Falls es Probleme geben sollte, den Webserver zu starten, kann es helfen, die Datei httpd.conf durch die Datei httpd.conf.default aus den Apache-Quellen zu ersetzen.
Installation von PHP (3/4)
- Die Sourcen entpacken
- In das Unterverzeichnis php wechseln
- Das Script
./configure
mit den zwei Parametern--with-apxs=/<APACHEDIR>/bin/apxs
(<APACHEDIR>
ist Ihr Apacheverzeichnis, normalerweise /usr/local/apache) und--with-mysql
. Sie können auch noch weitere Parameter angeben, wobei z.B.--with-config-file-path=/<APACHEDIR>/conf
sinnvoll wäre, damit Sie die Konfigurationsdateien in einem Verzeichnis haben. - Nun mit "make" und "make install" PHP installieren.
Apache mit PHP konfigurieren
Damit ist die Installation von PHP beendet. Nun muss Apache noch so konfiguriert werden, daß es bei PHP-Dateien PHP aufruft.
- Falls Ihr PHP nach dem Konfigurations-Skript oder make-Befehl eine Fehlermeldung gebracht hat, daß in dem APXS-Skript ein Fehler vorhanden wäre, müssen wir diesen zunächst beheben. Ansonsten springen Sie zu Schritt 2.
- Öffnen Sie die Datei apxs in Ihrem apache/bin Verzeichnis mit einem Editor.
- Suchen Sie nach einer Zeile, die so beginnt:
my $CFG_CFLAGS_SHLIB....
- Sie müssen nun die folgenden Zeilen:
my $CFG_CFLAGS_SHLIB =''; my $CFG_LB_SHLIB =''; my $CFG_LDFLAGS_SHLIB ='';
durch folgende ersetzen:
my $CFG_CFLAGS_SHLIB ='-fpic -DSHARED_MODULE'; my $CFG_LB_SHLIB ='gcc'; my $CFG_LDFLAGS_SHLIB =q(-shared);
- Speichern Sie nun die Datei ab, und der Fehler ist behoben.
- Öffnen Sie die Datei httpd.conf in Ihrem apache/conf Verzeichnis
- Suchen Sie in der Datei nach Zeilen, die so beginnen:
LoadModule...
und fügen Sie folgende Zeile am Ende hinzu:LoadModule php3_module libexec/libphp3.so
für PHP3 undLoadModule php4_module libexec/libphp4.so
für PHP4. - Suchen Sie nun Zeilen, die mit
AddModule...
beginnen, und fügen Sie entwederAddModule mod_php3.c
für PHP3 oderAddModule mod_php4.c
für PHP4 hinzu. - Suchen Sie nun noch Zeilen, die mit
AddType...
beginnen und fügen Sie für PHP3AddType application/x-httpd-php3 .php3
hinzu oderAddType application/x-httpd-php .php
für PHP4. - Als Letztes können Sie noch die Zeile
DirectoryIndex...
suchen und dort einen Eintrag wieindex.php
oderindex.php3
(für PHP3) hinzufügen. Dies ist aber nur notwendig, wenn die Startseite Ihres Webservers bereits ein PHP-Skript sein soll. - Speichern Sie nun die Datei wieder ab und schließen Sie sie.
Hiermit ist die Installation der Software abgeschlossen.
Im nächsten Teil werde ich an ein paar einfachen Beispielen erklären, wie man mit der Datenbankanbindung von PHP und MySQL umgeht.