Es wird empfohlen, den Webserver nginx zu verwenden, da dieser im Gegensatz zu Apache wesentlich weniger Ressourcen benötigt. Zum Tutorial

Installation

sudo apt-get install apache2
Konfiguration

Nachdem bei einem Start des Apache ein Hinweis erscheint "Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName" fügen wir an das Ende der Datei /etc/apache2/apache2.conf hinzu (die IP durch die eigene IP ersetzen):

ServerName 192.168.0.97

Setzen von Rechten für das Verzeichnis /var/www/:

sudo chown www-data:www-data /var/www/ -R

Aktivieren von sinnvollen Modulen:

sudo a2enmod deflate headers mem_cache rewrite unique_id
sudo /etc/init.d/apache2 restart

Ab nun sollte der Webserver über das interne Netz erreichbar sein; dazu in der Adressleiste des Browsers die IP der Box eingeben (bzw. http://cubian) - es sollte die Meldung "It works!" erscheinen.

Aktivieren von SSL

Debian/Cubian liefert bereits standardmäßig SSL-Zertifikate aus; da diese nicht von einer offiziellen CA ausgestellt wurden, erscheint im Browser beim Aufruf von https://cubian bzw. https://<ip-adresse> ein Hinweis.

sudo a2enmod ssl
sudo a2ensite default-ssl
sudo /etc/init.d/apache2 restart

Tuning

Von Haus aus genehmigen sich die Apache-Prozesse ziemlich viel RAM. Mit folgenden Anpassungen kann der Verbrauch drastisch verringert werden (zu diesem Teil des Tutorials von 840 MB auf 450 MB). Dabei wird von der althergebrachten Implementation "prefork" auf die Thread-basierte Implementation "worker" gewechselt.

sudo /etc/init.d/apache2 stop
sudo apt-get remove apache2-mpm-prefork libapache2-mod-php5
sudo apt-get install apache2-mpm-worker libapache2-mod-fcgid php5-cgi
sudo a2enmod fcgid

In eine neuen Datei /etc/apache2/conf.d/000-fastcgi.conf wird folgendes eingetragen:

# HOWTO: Using php5 with apache2-mpm-worker
# +http://ubuntuforums.org/showthread.php?t=1038416
<Directory /var/www>
AddHandler fcgid-script .php
FCGIWrapper /usr/lib/cgi-bin/php5 .php
Options +ExecCGI
</Directory>

# If you have Aliases provide php support for them (Here we provide php support for scripts in /usr/share's subdirectories)
#Alias /aptitude /usr/share/doc/aptitude/html/en
#Alias /apt /usr/share/doc/apt-doc
<Directory /usr/share>
AddHandler fcgid-script .php
FCGIWrapper /usr/lib/cgi-bin/php5 .php
Options ExecCGI FollowSymlinks Indexes
</Directory>

Zuletzt muss für jeden virtuellen Host im Verzeichnis /etc/apache2/sites-available/ hinter den Zeilen beginnend mit "Options" das +ExecCGI zugefügt werden, falls es nicht schon in der Zeile vorkommt.

Danach ist ein Neustart von Apache erforderlich:

sudo /etc/init.d/apache2 restart