- De Webserver
- Drupal - Installatie- en configuratiehandleiding
- Installatie Drupal 5
- Installatie Drupal 6
- Nieuwe methode voor vertalingen
- Taal aanpassen in Drupal 7
1. Apache configuratie
Laatst gewijzigd: 12 juli 2010, aangemaakt: 11 februari 2007
Apache2
Tijdens de installatie van Debian kan je al kiezen om een webserver mee te installeren. Dit geeft je tegenwoordig standaard Apache2. Het is vrij eenvoudig om Apache2 te configureren voor single-site setup met Drupal - dat wil zeggen dat je slechts één enkele website zult aanbieden. Voor single-site setup kan je de reeds aanwezige configuratiebestanden editeren.
Open het bestand /etc/apache2/sites-enabled/000-default en ga op zoek naar de bepaling voor DocumentRoot. Verander dit in de locatie waar je straks Drupal zult installeren. Doe hetzelfde voor de Directory instelling. Vul een geldig adres in voor de beheerder van de site en laat toe om naast index.html ook index.php te accepteren als standaardpagina in een directory. In ons voorbeeld wordt dat dus:
NameVirtualHost * <VirtualHost *> ServerAdmin webmaster@voorbeeld.be ServerName drupaltest DocumentRoot /var/www/drupal <Directory /var/www/drupal> Options Indexes FollowSymLinks MultiViews DirectoryIndex index.html index.php AllowOverride None Order allow,deny allow from all </Directory>
De aangepaste instellingen werden in vetjes gezet. De rest van dit bestand mag je onveranderd laten. Zorg ervoor dat de hostnaam drupaltest gekend is op je systeem, bijvoorbeeld door hem in DNS te declareren of in /etc/hosts op te nemen, zie de paragraaf „Naming services”.
Herstart Apache:
debian:~#apache2ctlrestart
![]() | Domeinnaam |
|---|---|
|
De domeinnaam in onze voorbeelden is „voorbeeld.be”. Vervang dit uiteraard door je eigen domeinnaam. |
De nieuwe Apache configureren voor multi-site setup - dat wil zeggen dat je met één enkele Drupal instantie meerdere sites zal beheren - is iets ingewikkelder, omdat de configuratie voor virtuele hosts opgesplitst werd in verschillende bestanden, en je bovendien ook nog de default configuratie best nog blijft gebruiken. De volgende zaken dienen in acht genomen te worden:
-
De eigenlijke configuratiebestanden voor virtuele hosts bevinden zich in
/etc/apache2/sites-available. De map/etc/apache2/sites-enabledbevat symbolische links naar de bestanden in/etc/apache2/sites-available. -
Voor het goed functioneren van Apache blijft het standaardbestand
000-defaultbest bestaan. -
Per virtuele host worden er gescheiden logbestanden gebruikt.
-
Zorg ervoor dat alle virtuele hosts gekend zijn in je naming service, bv. DNS voor genetwerkte setup of
/etc/hostsvoor een lokale installatie. Meer info hierover in de paragraaf „Naming services”.
Voor elke site die je via Drupal wilt aanbieden, maak je in /etc/apache2/sites-available een bestand aan. De naam doet er niet echt toe, dus kies iets dat voor jou herkenbaar is. Onze virtuele sites heten heel saai site-1 en site-2. Het configuratiebestand voor site-1 is site-1 en ziet er als volgt uit:
<VirtualHost *> ServerName site-1.intern.voorbeeld.be ServerAlias site-1 ServerAdmin webmaster+site-1@voorbeeld.be DocumentRoot /var/www/drupal <Directory /var/www/drupal> Options Indexes FollowSymLinks MultiViews DirectoryIndex index.html index.php AllowOverride None Order allow,deny allow from all </Directory> ErrorLog /var/log/apache2/site-1-error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/site-1-access.log combined ServerSignature On </VirtualHost>
Als basis kan je een kopie nemen van het default bestand. De aangebrachte veranderingen worden hierboven getoond in vetjes. We zetten ze nog even op een rijtje:
-
ServerName -
ServerAlias -
ServerAdmin -
DocumentRootenDirectory: dit is voor alle virtuele hosts/var/www/drupal. Alle virtuele sites worden dus naar Drupal doorgestuurd, dat naderhand zal bepalen welke bestanden uit welke database er getoond zullen worden. -
DirectoryIndex:index.phpwordt toegevoegd. -
error.logenaccess.logworden per site ingesteld. Je hoeft deze bestanden niet zelf te gaan aanmaken, Apache brengt dat automatisch in orde.
Als je wilt dat je bezoekers je site kunnen zien met of zonder “www” voor de domeinnaam, maak dan een configuratie als volgt:
<Virtualhost 81.188.4.99> ServerName www.voorbeeld.be ServerAlias voorbeeld.be DocumentRoot /var/www/drupal
</VirtualHost>
Verder hoef je voor dit soort configuraties enkel DNS in orde te brengen (zie de paragraaf „DNS configuratie”). In Drupal zelf hoef je niets in te stellen, noch moet je speciale mappen aanmaken zoals hierna beschreven wordt.
Maak voor elke site een symbolische link aan in /etc/apache2/sites-enabled:
debian:sites-enabled#ln-s../sites-available/site-1 site-1debian:sites-enabled#ln-s../sites-available/site-2 site-2
Laat de 000-default link die verwijst naar /etc/apache2/sites-available/default ongemoeid.
Kies voor een single-site setup als je met Drupal slechts één enkele website wilt aanbieden.
Editeer het bestand /etc/apache/httpd.conf en pas de volgende instellingen aan:
-
ServerAdmin: geef een geldig e-mailadres voor de webmaster op. -
ServerName: geef hier het IP-adres van de server of de naam op. -
DocumenRoot:/var/www/drupal. -
DirectoryIndex: voegindex.phptoe als dat er nog niet staat.
Herstart Apache:
debian:~#apachectlrestart
Kies voor een multi-site setup als je met één enkele Drupal instantie verschillende websites wilt aanbieden. Onze voorbeeldsites hebben de namen site-1 en site-2.
Ga naar de sectie “Virtual Hosts” in /etc/apache/httpd.conf. Verander volgende zaken:
-
NameVirtualHost: vul het IP-adres van je machine in. -
Voeg voor elke virtuele site als volgt een blok toe:
<VirtualHost site-1.intern.voorbeeld.be> ServerAdmin webmaster@voorbeeld.be DocumentRoot /var/www/drupal ServerName site-1.intern.voorbeeld.be ErrorLog /var/log/apache/site-1.intern.voorbeeld.be-error.log CustomLog /var/log/apache/site-1.intern.voorbeeld.be-access.log combined RedirectMatch /path url
</VirtualHost> -
Pas de rest van het bestand aan zoals beschreven in de paragraaf „Single-site setup”.
Herstart Apache:
debian:~#apachectlrestart
Controleer dat de logbestanden per site aangemaakt zijn in /var/log/apache. Als alles goed gaat, genereert dit commando geen output.
»



- login of registreer om te reageren

![[Opmerking]](images/note.gif)