wordpress optimaliseren op een vps
Wordpress Optimaliseren Op Een Vps
WordPress optimaliseren op een VPS
Dit artikel beschrijft hoe je WordPress optimaliseert op een Pixzo VPS voor maximale prestaties, gericht op developers en systeembeheerders.
Vereisten
- Een Pixzo VPS met Ubuntu 22.04 of 24.04 - WordPress geïnstalleerd (versie 6.7 of hoger) - SSH-toegang met sudo-rechten - Nginx en PHP-FPM geïnstalleerd (PHP 8.3, niet PHP 8.4 voor productie)
Stappen
1. Configureer Nginx met HTTP/2 en PHP-FPM
Vervang de standaard Apache door Nginx. Gebruik dit configuratieblok voor je WordPress-site:
```nginx server { listen 443 ssl http2; server_name jouwdomein.nl; root /var/www/jouwdomein.nl/public; index index.php;
location / { try_files $uri $uri/ /index.php?$args; }
location ~ \.php$ { include fastcgi_params; fastcgi_pass unix:/var/run/php/php8.3-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; }
location ~* \.(jpg|jpeg|png|gif|ico|css|js|webp|avif)$ { expires 365d; add_header Cache-Control "public, immutable"; } } ```
2. Schakel OPcache in
PHP 8.3 OPcache versnelt executie door compiled PHP-opcode te cachen. Voeg dit toe aan `/etc/php/8.3/fpm/conf.d/10-opcache.ini`:
```ini opcache.enable=1 opcache.memory_consumption=256 opcache.max_accelerated_files=10000 opcache.revalidate_freq=2 ```
Herstart PHP-FPM: `sudo systemctl restart php8.3-fpm`
3. Implementeer paginacaching met caching plugin
Gebruik WP Rocket of W3 Total Cache. Let op: gebruik W3 Total Cache alleen met Nginx. Installeer de plugin, activeer Page Caching en stel de cache lifetime in op 3600 seconden. Voeg dit toe aan je Nginx config voor static file serving:
```nginx location / { try_files /wp-content/cache/page_enhanced/$host$uri/index.html $uri $uri/ /index.php?$args; } ```
4. Configureer GZIP-compressie en browserscache
Voeg in `nginx.conf` binnen het `http` blok:
```nginx gzip on; gzip_types text/css text/javascript application/javascript text/xml application/json image/svg+xml; gzip_proxied any; gzip_comp_level 6;
map $sent_http_content_type $expires { default off; text/html off; text/css max; application/javascript max; ~image/ max; } ```
5. Stel browsercache in voor statische bestanden
Gebruik de expires-directive uit stap 1. Voeg ook add_header voor caching toe in het serverblok:
```nginx location ~* \.(ico|pdf|flv)$ { expires 1y; add_header Cache-Control "public, immutable"; } ```
6. Implementeer een CDN
Kies Cloudflare, BunnyCDN of KeyCDN. Voor Cloudflare: configureer een A-record naar je VPS-IP, zet proxy (orange cloud) aan. Voor dynamische content gebruik Cloudflare APO (WordPress plugin). Test met `curl -I https://jouwdomein.nl` en controleer de `cf-cache-status` header.
7. Optimaliseer afbeeldingen en media
Installeer ShortPixel of Imagify. Stel in plugin: compressie op lossy (80-90% kwaliteit), output WebP en AVIF, lazy loading aan. Externe video’s via YouTube/Vimeo embed. Controleer met `curl -I https://jouwdomein.nl/wp-content/uploads/2024/image.jpg` of bestanden in WebP/AVIF worden geserveerd.
8. Maak de database schoon en monitor prestaties
Installeer WP-Optimize. Voer handmatig uit: verwijder revisies, spamreacties, transiënten. Voor query-analyse gebruik Query Monitor plugin. Monitor server met Netdata:
```bash bash <(curl -Ss https://my-netdata.io/kickstart.sh) ```
Draai Netdata als systemd service: `sudo systemctl enable netdata --now`
Verificatie
Open de site in incognitomodus, laad een pagina, open Developer Tools (F12) → Network tab. Controleer: - Status 200 voor HTML, 304 of 200 (van cache) voor assets - Header `x-cache: HIT` of `cf-cache-status: HIT` - Laadtijd onder 2 seconden - GZIP aanwezig via `Content-Encoding: gzip`
Veelgestelde problemen
Plugin-compatibiliteit met PHP 8.3 Sommige oude plugins werken niet met PHP 8.3. Check de plugin developer website of vervang ze.
Traditionele Apache htaccess werkt niet met Nginx Converteer regels naar Nginx configuratie. Gebruik een generator zoals nginxconfig.io.
LiteSpeed Cache werkt niet Vervang door WP Rocket of W3 Total Cache — LiteSpeed vereist LiteSpeed webserver, niet Nginx.
De prestaties van je WordPress site zijn nu meetbaar; de volgende stap is het instellen van een staging-omgeving voor veilige updates.