Debian Etch – Apache2 mit PHP5 via FastCGI und mehreren VHosts (Teil 1)

August 25th, 2008 // No Comments // Posted by Paeddl

Dieses HowTo soll euch zeigen, wie man auf Debian Etch einen leistungsstarken Webserver für PHP-Anwendungen zur Verfügung stellt. Ich verwende beschriebene Konfiguration für einen Produktiv-Server, auf dem mehrere VHosts laufen. Darauf sind zahlreiche Web-Applikationen, wie Typo3 installiert. Ziel ist es einen Server mit folgenden Eigenschaft zu installieren…

* Apache 2
* PHP5 (via FastCGI)
* cURL-Erweiterung für PHP (wird von Typo3)
* Tidy-Erweiterung für PHP (optional für PHP)
* mcrypt-Erweiterung für PHP (empfohlen für phpMyAdmin)
* GD2lib mit Freetype2
* eAccelerator (PHP-Beschleuniger)
* Zend Optimizer (PHP-Beschleuniger)
* MySQL5

Des Weiteren wird es mit diesen Paketen möglich sein, die PHP-Skripte mit den Rechten des Eigentümers auszuführen. Dafür wird suExec zuständig sein. Ich lege bei diesem Tutorial Wert auf eine hohe PHP-Performance, weshalb ich zu dem seit längerem etabliertem FastCGI auch noch zwei PHP-Beschleuniger einsetze.

Benötigt wird ein SSH-Zugang zu eurem Sever. Natürlich verlangt die Konfiguration von uns, dass wir mit root-Rechten auf dem Server arbeiten dürfen. Zudem verwende ich für das Editieren der Config-Dateien den Edit-Modus des MidnightCommanders. Das ist in meinen Augen ein ganz nützlicher Datei-Browser, der ein minimales GUI mitbringt. Wer ihn ebenfalls nutzen will, installiert das Teil mit folgendem Befehl:

# aptitude install mc

Ihr solltet zunächst euer Debian auf den neusten Stand bringen. Wie empfohlen nutzen wir zum Installieren der Pakete “aptitude”. Wer bei seinem System bereits auf apt-get zurückgegriffen hat, sollte dies auch weiterhin tun und “aptitude” durch “apt-get” ersetzen.

System aktualisieren

# aptitude update
# aptitude upgrade

Benötigte Pakete installieren:

# aptitude install apache2-mpm-worker apache2-threaded-dev apache2.2-common apache2-utils libapache2-mod-fcgid php5 php5-common php5-cgi php5-gd php5-mysql php5-tidy php5-curl php5-mcrypt mysql-server-5.0 libfreetype6 libgd2-xpm

Standardmäßig bekommt der MySQL-Root-User kein Passwort, da zunächst keine Verbindungen von außen zulässt. Da sicher nun einmal sicher ist, werden wir dennoch ein Passwort vergeben. “geheim” bitte durch dein Passwort ersetzen.

# mysqladmin -u root password geheim

Wenn du nun die IP-Adresse deines Servers im Browser eingibst, solltest du bereits mit der Meldung “It works!” belohnt werden.

Zu Teil 2

No comments yet.

Leave a comment

This Blog is discontinued…

We're no longer generating content for Cityclouds. Consider it an archive for great things a group of Berliners found on the web and elsewhere from 2008 to 2012. The future is bright...

Categories

Archive