Blog

Tutorials, handleidingen en productnieuws.

Ontwikkelaars

Wat zijn LAMP- en LEMP-stacks?

3 november 2026 5 min. leestijd
Dit bericht delen

LAMP en LEMP noemen de vier softwareonderdelen waarmee een gewone website wordt geserveerd: Linux, een webserver, een database en PHP. De A in LAMP staat voor Apache en de E in LEMP voor Nginx (uitgesproken als "engine-x", vandaar de E). In beide stacks is de database MySQL of MariaDB en de programmeertaal PHP.

PHP-applicaties zoals WordPress, WooCommerce en Joomla draaien op deze stack. WordPress.org raadt Apache of Nginx aan als webserver, dus beide vormen een solide basis. Welke je kiest, bepaalt niet of je applicatie werkt. Het verandert hoe je de instellingen schrijft.

Hoe werkt de stack?

LaagLAMPLEMPRol
BesturingssysteemLinuxLinuxDe basis waarop alles draait
WebserverApacheNginxBeantwoordt verzoeken van browsers
DatabaseMySQL of MariaDBMySQL of MariaDBSlaat berichten, gebruikers en bestellingen op
TaalPHPPHP, via PHP-FPMBouwt de pagina

Een verzoek loopt zo door de stack:

  1. De browser stuurt een verzoek naar je domein. Het komt aan op poort 80 of 443 van je server.
  2. De webserver ontvangt het verzoek. Gaat het om een afbeelding of een CSS-bestand, dan serveert hij het bestand zelf.
  3. Gaat het om een PHP-bestand, dan geeft de webserver het door aan PHP en voert PHP de code uit.
  4. PHP bevraagt zo nodig de database en bouwt de pagina. De webserver stuurt de pagina terug naar de browser.

Opent een pagina niet, controleer dan de lagen op volgorde: systemctl status nginx, systemctl status phpX.Y-fpm en systemctl status mariadb. X.Y staat voor je PHP-versie (8.3 op Ubuntu 24.04) en bij LAMP gebruik je apache2 in plaats van nginx. Waar iets niet draait, begint het probleem.

Wat is het verschil tussen LAMP en LEMP?

  • Apache leest .htaccess-bestanden en Nginx niet. Bij Nginx gaan regels in de serverconfiguratie.
  • Nginx voert PHP niet in zichzelf uit. Het geeft verzoeken door aan een aparte dienst die PHP-FPM heet. Apache kan PHP in zichzelf of via PHP-FPM uitvoeren.
  • De configuratiemappen verschillen. Op Ubuntu gebruikt Apache /etc/apache2 en Nginx /etc/nginx.
  • Geheugengebruik wordt meer bepaald door het aantal PHP-FPM-workers en de database-instellingen dan door de keuze van webserver.
  • Geen van beide is duidelijk beter. Beide worden veel gebruikt, dus de gids die je volgt en je gewoonten beslissen.

MySQL of MariaDB?

MariaDB is een open-sourcedatabase die van MySQL is afgesplitst, en hun opdrachten en clients zijn grotendeels compatibel. De officiële vereistenpagina van WordPress accepteert beide, dus bekijk daar de actuele minimumversies. Op Ubuntu installeert het pakket mariadb-server met één opdracht. Volgens de documentatie van MariaDB gebruikt het rootaccount sinds versie 10.4 standaard unix_socket-authenticatie. Voer op de server gewoon sudo mariadb uit. Een rootwachtwoord is niet nodig.

LEMP opzetten op Ubuntu

Deze stappen zijn voor Ubuntu en Debian. Verbind eerst via SSH met de server. De voorbeelden gebruiken example.com als domeinnaam, vervang die dus door die van jou.

  1. Ververs de pakketlijst: sudo apt update
  2. Installeer de pakketten: sudo apt install nginx mariadb-server php-fpm php-mysql. De geïnstalleerde versies zijn die uit de pakketrepository.
  3. Beveilig de database: sudo mariadb-secure-installation. Antwoord ja op het verwijderen van anonieme gebruikers, het verwijderen van de testdatabase en het niet toestaan van root-login op afstand.
  4. Maak de map voor de site aan: sudo mkdir -p /var/www/example
  5. Open een bestand met sudo nano /etc/nginx/sites-available/example en plak deze regel: server { listen 80; server_name example.com www.example.com; root /var/www/example; index index.php index.html; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/phpX.Y-fpm.sock; } }
  6. ls /run/php/ toont de echte naam van de socket. Schrijf die in plaats van phpX.Y-fpm.sock.
  7. Schakel de site in: sudo ln -s /etc/nginx/sites-available/example /etc/nginx/sites-enabled/
  8. Test en pas de configuratie toe: sudo nginx -t en daarna sudo systemctl reload nginx
  9. Gebruik je ufw, open dan poort 80 en 443: sudo ufw allow 80/tcp en sudo ufw allow 443/tcp. Zorg dat de SSH-poort (22) openstaat.

Schrijf een testbestand om te testen of PHP werkt:

echo '<?php phpinfo();' | sudo tee /var/www/example/info.php

Wijst het domein nog niet naar de server, test dan vanaf de server zelf met curl -H 'Host: example.com' http://127.0.0.1/info.php. Verwijder het bestand zodra je ziet dat het werkt: sudo rm /var/www/example/info.php. Die pagina toont de gegevens van je server aan iedereen.

Een database voor je applicatie

Open de databaseshell met sudo mariadb en maak voor elke applicatie een aparte database en gebruiker aan. Kies zelf een sterk wachtwoord:

CREATE DATABASE exampledb CHARACTER SET utf8mb4;

CREATE USER 'exampleuser'@'localhost' IDENTIFIED BY 'a-strong-password';

GRANT ALL ON exampledb.* TO 'exampleuser'@'localhost';

Deze drie waarden (database, gebruiker, wachtwoord) vul je in op het installatiescherm van WordPress. Vervang voor werkende permalinks in WordPress =404 in de Nginx-regel door /index.php?$args.

Wat verandert er bij LAMP?

Voor de Apache-stack installeer je de pakketten zo:

sudo apt install apache2 mariadb-server php libapache2-mod-php php-mysql

Je definieert de site onder /etc/apache2/sites-available en zet hem aan met sudo a2ensite example. Voer voor permalinks sudo a2enmod rewrite uit en herstart Apache met sudo systemctl restart apache2. Om .htaccess-bestanden te laten werken, moet je AllowOverride All instellen voor de map van de site. Je kunt Apache ook met PHP-FPM draaien, wat past bij het eventgestuurde model event. De databasestappen zijn hetzelfde als bij LEMP.

Na de installatie

  • Voeg een HTTPS-certificaat toe. Let's Encrypt is gratis en Certbot werkt met zowel Nginx als Apache.
  • Stel de eigenaar in van de mappen waar de webserver naar moet kunnen schrijven. Op Ubuntu en Debian draait de webserver als gebruiker www-data: sudo chown -R www-data:www-data /var/www/example.
  • Installeer regelmatig updates met sudo apt update && sudo apt upgrade. Na de installatie zijn updates van het besturingssysteem en de software jouw verantwoordelijkheid.
  • Maak met mariadb-dump apart een back-up van de database. De dagelijkse back-up van de server is bij de prijs inbegrepen, maar je moet van belangrijke gegevens nog steeds zelf een extra kopie bewaren.

Wil je de stack kant-en-klaar gebruiken, bestel dan met de optie LAMP of LEMP van Seturack en hij installeert zichzelf. Heb je alleen WordPress nodig, dan is de optie WordPress VPS genoeg: de installatie duurt ongeveer 4-5 minuten en het adres en wachtwoord verschijnen in het paneel.

Kant-en-klaar bij Seturack: LAMP, LEMP.

Reacties0

Nog geen reacties

Deel als eerste uw gedachten.

Doe mee aan het gesprek

Meld u aan of registreer u om een reactie te plaatsen.

Mis geen enkel bericht

Ontvang onze nieuwste tutorials, handleidingen en productnieuws in uw inbox.

U bent ingeschreven voor onze nieuwsbrief.