Installeren van de webserver

Bij het installeren van Ubuntu Server kunnen verschillende pakketten geinstalleerd worden, waaronder LAMP. Door het installeren van LAMP heb je direct Apache, MySQL en PHP/Perl/Python geinstalleerd.

Als je Ubuntu Server al geinstalleerd hebt, kun je het LAMP pakket ook installeren met:

$ sudo tasksel

Selecteer nu LAMP server en druk op OK.

phpMyAdmin installeren

Om de database(s) te configureren en bij te houden, wil je waarschijnlijk phpMyAdmin gebruiken. Deze is als volgt te installeren:

$ apt-get install phpmyadmin

Kies in de configuratie voor Apache en dbconfig-common = Yes

Data directory aanmaken

De site komt te staan in /home/www/voorbeeld.nl. Alleen de user www-data, waaronder Apache draait, heeft lees en exec rechten. Maak deze site als volgt.  

$ mkdir -p /home/www/voorbeeld.nl  
$ cd /home  
$ chown -R www-data:www-data www  
$ chmod -R 500 www  
$ cd www/voorbeeld.nl  
$ chmod -R 400 *

Apache configureren

Maak een Apache2 configuratie file aan, vanuit de template file “default”.

# cd /etc/apache2/sites-available  
# sudo cp default voorbeeld.nl

Open deze voorbeeld.nl file in vi en wijzig deze als hieronder:  

<VirtualHost *:80>  
    ServerAdmin webmaster@voorbeeld.nl
    ServerName voorbeeld.nl  
    DocumentRoot /home/www/voorbeeld.nl/
    <Directory />  
        Options FollowSymLinks  
        AllowOverride None  
    </Directory>  

    <Directory /home/www/voorbeeld.nl/>  
        Options Indexes FollowSymLinks MultiViews  
        AllowOverride None  
        Order allow,deny  
        allow from all  
    </Directory>
...

Nu deze configuratie file klaar is, kunnen we de site activeren door als volgt een link aanmaken in de /etc/apache2/sites-enabled directory:

$ sudo a2ensite voorbeeld.nl  

Reload de nieuwe configuratie van de site:

$ sudo /etc/init.d/apache2 reload

Clean URL’s activeren

Om op een webserver “Clean URL’s” of schone URL’s te activeren, moet je de module rewrite activeren:

$ sudo a2enmod rewrite  
$ sudo /etc/init.d/apache2 restart

Wijzig daarna in jouw Apache2 configuratie file AllowOverride naar All:

$ vi /etc/apache2/sites-available/voorbeeld.nl

<Directory /home/www/voorbeeld.nl/>  
    Options Indexes FollowSymLinks MultiViews  
    AllowOverride All
    Order allow,deny  
    allow from all  
</Directory>_  

Domein toevoegen aan hosts file

Als je nu de server opstart, wordt er door apche2 waarschijnlijk een “Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName” gegeven. Dit is op te lossen door de ServerName aan de httpd.conf toe te voegen.

$ vi /etc/apache2/httpd.conf
...  
ServerName localhost  

Als je de webserver herstart, dan moet de melding verdwenen zijn:

$ /etc/init.d/apache2 restart  

De webserver testen

Om te testen kun je de volgende index.html aanmaken in /home/www/voorbeeld.nl/:

$ vi index.html
<html><body><h1>Het werkt!</h1></body></html>

Open nu in een browser voorbeeld.nl en je zult de tekst “Het werkt!” zien.

Zie ook help.ubuntu.com/9.04/serverguide/C/httpd.html

Een secure http verbinding

Hoe je de webserver secure met https kan laten werken, dat lees je in dit artikel:

configureren-van-apache-2-en-ssl-voor-een-https-verbinding

Foutmeldingen

mysqldump: Error 2003

Als je de mysql database wilt backuppen met met mysqldump en je krijgt de volgende melding van een remote host:

mysqldump: Got error: 2003: Can't connect to MySQL server on 'HOST'

Dan kan het volgende aan de hand zijn; de mysql server accepteert alleen verbinding met de localhost.

Dit op te lossen door het bind-address uit te commentarieren:

$ vi /etc/mysql/my.cnf 
#bind-address = 127.0.0.1