Installation eines LAMP Webservers mit Ubuntu

22 08 2012

Normalerweise nutze ich für meinen Test-Webserver die XAMPP Sammlung, da dieses keinerlei Installation erfordert und das komplette Paket portabel ist, also beispielsweise mit einem USB Stick überall hin mitgenommen und auf einem anderen Computer weiter verwendet werden kann. Trotzdem kann es manchmal von Vorteil sein, die Komponenten direkt zu installieren.

Die Mär, dass eine Installation eines funktionierenden Webservers mit allen wichtigen Komponenten für Testzwecke schwierig sei möchte ich heute ausräumen. Natürlich taugt ein solches System noch nicht für den Produktiveinsatz, sollte also nicht öffentlich an das Netz angebunden werden. Dazu benötigt es noch einigen Feinschliff insbesondere was die Sicherheit gegenüber böswilligen Angriffen angeht.

Im Folgenden wollen wir uns die gebräuchlichste Software installieren. Die wären der Apache Webserver, als Datenbank MySQL sowie die Skriptsprache PHP. Nimmt man dann noch unser Betriebssystem hinzu, wissen wir jetzt auch, wofür LAMP steht, nämlich für Linux, Apache, MySQL, PHP.

Was das genau für Programme sind, was man damit überhaupt anstellen kann, das ist nicht Inhalt dieses Artikels. Hier soll es lediglich um die Installation in Linux gehen. Ein grundsätzliches Verständnis der Materie wird also vorausgesetzt.

Apache
Installieren des Apache Webservers:

sudo apt-get install apache2

Der Server soll nicht von außen erreichbar sein. Deshalb sagen wir Apache, dass er nur auf localhost hören soll. Hierzu bearbeiten wir die ports.conf:

sudo vi /etc/apache2/ports.conf

Listen 80
ändern in
Listen localhost:80

Jetzt können wir unseren Webserver schon testen, indem wir die Adresse http://localhost/ in unsere Browser-Adresszeile eintippen.

Wollen wir Subdomains erstellen, kopieren wir uns das Default-Template aus /etc/apache2/sites-available in eine neue Datei mit dem Namen unseres virtuellen Hosts und editieren diese. Meine Subdomain heißt „ramtatta“, außerdem habe ich den Default-Pfad von /var/www/ noch abgeändert in mein Home-Verzeichnis.

sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/ramtatta
sudo vi /etc/apache2/sites-available/ramtatta

<VirtualHost *:80>
   ServerName ramtatta.localhost
   ServerAdmin webmaster@localhost
   DocumentRoot /home/aaaaa/htdocs/RamTatTa
   <Directory /home/aaaaa/htdocs/RamTatTa/>
      Options Indexes FollowSymLinks MultiViews
      AllowOverride All
      Order allow,deny
      allow from all
   </Directory>
   ErrorLog ${APACHE_LOG_DIR}/error.log
   LogLevel warn
   CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Damit die Umleitung funktioniert, müssen wir noch unsere hosts erweitern.
sudo vi /etc/hosts

Hinzufügen dieser Zeile:
127.0.0.1 ramtatta.localhost

Jetzt muss der virtuelle Host noch aktiviert und der Apache durchgestartet werden.
sudo a2ensite
sudo /etc/init.d/apache2 restart

Aufrufen können wir die Subdomain folgendermaßen: http://ramtatta.localhost/

Möchten wir unsere Links mittels mod_rewrite verschönern, so müssen wir dieses ggf. auch erst noch aktivieren.
sudo a2enmod rewrite
sudo /etc/init.d/apache2 restart

PHP
Installieren von PHP:

sudo apt-get install php5

Unsere HTML Seiten legen wir per Default in /var/www ab. PHP testen wir, indem wir hier eine Datei index.php mit folgendem Inhalt erzeugen.

vi /var/www/index.php
   <?php
   phpinfo();
   ?>

Laden wir jetzt wieder http://localhost/ im Browser, wird eine Seite mit vielen Informationen zu unserer Serverumgebung dargestellt.

MySQL
Installieren von MySQL. Den de facto Standard zur Administration von MySQL Datenbanken im Web stellt PHPMyAdmin dar. Um uns gleich daran zu gewöhnen, installieren wir das gleich mit.

sudo apt-get install mysql-server php5-mysql phpmyadmin

Ich selbst habe mich selbst an die Software Navicat gewöhnt. Auch in der kostenlosen Version bietet dieses Programm sehr viele schöne Funktionen und ist in seiner Eigenschaft als echtes Programm jederzeit flotter als die Weboberfläche von PHPMyAdmin. Einziges Manko ist, dass es sich eigentlich um Windows-Binaries handelt, das lediglich gebündelt mit der Wine Laufzeitumgebung als Linux-Version angeboten werden.

Auf die Datenbank können wir jetzt also auch zugreifen. Hierzu tippen wir in der Shell

mysql -u root

bzw. laden im Browser die Adresse http://localhost/phpmyadmin.

Eclipse
Einen sehr mächtigen Editor für die Entwicklung unserer PHP Dateien finden wir in Eclipse. Dieser ist grundsätzlich für die Java-Entwicklung gedacht, mit den PHP Development Tools (PDT) können wir diesen aber auch sehr gut für PHP verwenden.

Installation des Grundpaketes für Eclipse:

sudo apt-get install eclipse

Das Programm starten wir und klicken uns durch zur automatischen Installation der PDT:
Help -> Install new software… -> Work with: Indigo Update Site wählen -> Programming Languages -> PHP Development Tools (PDT) -> Installieren

Xdebug
Ein großer Nachteil von PHP ist, dass sich dieses normalerweise nicht wirklich debuggen lässt. Abhilfe schafft die Xdebug Erweiterung. Wir installieren zunächst das Paket.

sudo apt-get install php5-xdebug

Jetzt müssen wir das Binary und die Ini-Datei finden. Dazu aktualisieren wir unsere Datenbank für locate und lassen uns dann den Pfad für die xdebug.so und xdebug.ini ausgeben.

sudo updatedb

locate xdebug.so
/usr/lib/php5/20090626/xdebug.so

locate xdebug.ini
/etc/php5/cli/conf.d/xdebug.ini

Die Ini Datei editieren wir. Normalerweise sollte hier der Pfad für die Binary schon eingetragen sein, wir kontrollieren dies aber zur Sicherheit. Dann tragen wir noch ein paar Variablen ein, mit denen wir Xdebug aktivieren und starten den Apache neu.

sudo vi /etc/php5/cli/conf.d/xdebug.ini
   zend_extension=/usr/lib/php5/20090626/xdebug.so
   xdebug.remote_enable=1
   xdebug.remote_handler=dbgp
   xdebug.remote_mode=req
   xdebug.remote_host=127.0.0.1
   xdebug.remote_port=9000
sudo /etc/init.d/apache2 restart
Advertisements

Aktionen

Information

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s




%d Bloggern gefällt das: