Howto: Configureer Apache2 voor meerdere domeinen op 1 IP-adres #ubuntu
Apache2 is een van de meest gebruikte webservers op het internet. Naast goede stabiliteit biedt het ook een makkelijke install en configuratie. In een mum van tijd heb je de mogelijkheid om je website online te zetten en dat zonder al te veel gedoe. Maar wat als je meerdere domeinen of subdomeinen wilt hosten op één server? Hoe ga je dan te werk? Ik leg het je in deze post uit hoe je deze zogenaamde VirtualHosts configureert, en ik beloof je dat je in minder dan 10 minuten zal begrijpen hoe je het best kan aanpakken!
Eerst en vooral install je Apache2. Hoe je dat moet doen ga ik hier niet uitleggen, maar je kan hier mijn HowTo lezen. Ik raad je aan enkel te installen en nog niets te configureren gemakkelijkheidshalve.
Er zijn meerdere oplossingen beschikbaar om dit te bekomen. Ik ga je hier de gemakkelijkste uitleggen en besef dat er meerdere mogelijkheden zijn en dat je deze tutorial ook kan gebruiken om jouw installatie uit te breiden.
1. Je hostname koppelen aan een IP-adres en je server.
Om zeker te zijn dat je IP-adres gekend is in het systeem zullen we voor alle zekerheid je IP-adres koppelen aan je server. Voer volgende commando's uit als root.
-
nano /etc/hosts
- Voeg het volgende toe: 10.0.0.1 [Druk op de TAB-toets] www.voorbeeld.be
- Bewaar de wijzigingen
2. Directories aanmaken.
In ons voorbeeld gaan we 2 domeinen koppelen en 1 subdomein.
- www.voorbeeld.be
- www.voorbeeld.nl
- images.voorbeeld.nl
Voor elk domein gaan we een root directory aanmaken en ook een directory waar Apache2 de logs kan dumpen op een locatie waar webgebruikers geen toegang toe hebben. Voer de onderstaande commando's uit als root.
mkdir /home/www/www.voorbeeld.be mkdir /home/www/www.voobeeld.nl mkdir /home/www/images.voorbeeld.nl mkdir /home/wwwlogs/
3. Apache2 configureren.
Open /etc/apache2/httpd.conf als root en voeg volgende regels toe.
NameVirtualHost *:80 <VirtualHost *:80> ServerAdmin webmaster@voorbeeld.be DocumentRoot "/home/www/www.voorbeeld.be" ServerName www.voorbeeld.be ServerAlias voorbeeld.be ErrorLog "/home/wwwlogs/www.voorbeeld.be-error_log" CustomLog "/home/wwwlogs/www.voorbeeld.be-in-access_log" common </VirtualHost> <VirtualHost *:80> ServerAdmin webmaster@voorbeeld.nl DocumentRoot "/home/www/www.voorbeeld.nl" ServerName www.voorbeeld.nl ServerAlias voorbeeld.nl ErrorLog "/home/wwwlogs/www.voorbeeld.nl-error_log" CustomLog "/home/wwwlogs/www.voorbeeld.nl-access_log" common </VirtualHost> <VirtualHost *:80> ServerAdmin webmaster@voorbeeld.nl DocumentRoot "/home/www/images.voorbeeld.nl" ServerName images.voorbeeld.nl ServerAlias images.voorbeeld.nl ErrorLog "/home/wwwlogs/images.voorbeeld.nl-error_log" CustomLog "/home/wwwlogs/images.voorbeeld.nl-access_log" common </VirtualHost>
4. Apache2 herstarten
Als root nogmaals, het volgende:
/etc/init.d/apache2 restart
5. Geniet van je nieuwe server configuratie.
