wordpress optimaliseren op een vps
Wordpress Optimaliseren Op Een Vps
WordPress optimaliseren op een VPS – Pixzo technische handleiding
Dit artikel beschrijft hoe je WordPress prestaties maximaliseert op een Pixzo VPS, bedoeld voor beheerders die de server zelf configureren.
Vereisten
- Server: Pixzo VPS met minimaal 2 GB RAM en 2 CPU cores - WP-versie: WordPress 6.5 of hoger (controleer met `wp core version`) - PHP: 8.1 of 8.2 (controleer met `php -v`) - SSH-toegang met root- of sudo-rechten - Webserver: Nginx (aanbevolen) of LiteSpeed - Optioneel: `wp-cli` (installeer met `curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar`)
Stappen
1. Optimaliseer de webserver en PHP-stack
Gebruik Nginx voor betere statische file performance dan Apache. Zet OPcache aan voor PHP 8.2.
Open `/etc/php/8.2/fpm/php.ini` en wijzig deze regels:
```ini opcache.enable=1 opcache.memory_consumption=128 opcache.max_accelerated_files=10000 ```
Herstart PHP-FPM:
```bash sudo systemctl restart php8.2-fpm ```
2. Configureer PHP-FPM workers
Pas het aantal workers aan op je VPS resources. Voor 2 GB RAM en 2 cores: max 8 workers.
Bewerk `/etc/php/8.2/fpm/pool.d/www.conf`:
```ini pm = dynamic pm.max_children = 8 pm.start_servers = 4 pm.min_spare_servers = 2 pm.max_spare_servers = 4 ```
Herstart PHP-FPM:
```bash sudo systemctl restart php8.2-fpm ```
3. Activeer HTTP/2 in Nginx
Open `/etc/nginx/nginx.conf` en voeg toe aan het `http` blok:
```nginx server { listen 443 ssl http2; listen [::]:443 ssl http2; } ```
Controleer configuratie en herstart:
```bash sudo nginx -t && sudo systemctl restart nginx ```
4. Installeer paginacaching
Voor Nginx: gebruik WP Rocket (plugin) en configureer cache-instellingen.
Installeer WP Rocket via WP-admin en zet in Settings > WP Rocket > Cache: - Enable caching: aan - Cache lifespan: 3600 seconden (1 uur)
Of gebruik nginx-helper voor een server-side cache:
```bash sudo apt install nginx-common ```
Voeg aan `/etc/nginx/sites-available/your-site` toe:
```nginx set $cache_uri $request_uri; location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ { expires 365d; add_header Cache-Control "public, immutable"; } ```
Test en herstart:
```bash sudo nginx -t && sudo systemctl reload nginx ```
5. Configureer browsercaching
Voeg bovenstaande cache-headers aan Nginx toe voor statische bestanden.
In hetzelfde bestand, voeg onder `location ~* \.(jpg|jpeg|png|gif|ico|css|js)$` ook toe:
```nginx add_header Cache-Control "public, immutable"; ```
Herlaad Nginx.
6. Optimaliseer afbeeldingen
Gebruik `optipng` en `jpegoptim` voor bulkverkleining:
```bash sudo apt install optipng jpegoptim find /var/www/html/wp-content/uploads -name "*.jpg" -exec jpegoptim --strip-all --max=85 {} \; find /var/www/html/wp-content/uploads -name "*.png" -exec optipng -o7 {} \; ```
Activeer WebP-ondersteuning via WP Rocket (instellingen onder Media).
7. Schoon database op
Gebruik WP-Optimize:
```bash wp plugin install wp-optimize --activate wp db optimize ```
Verwijder verlopen transients en spammers:
```bash wp transient delete --all wp comment delete $(wp comment list --status=spam --format=ids) --force ```
8. Beperk autoloaded options
Controleer autoload omvang:
```bash wp option list --autoload=yes --format=total_size ```
Als > 1 MB, vind en verwijder ongebruikte opties:
```bash wp option list --autoload=yes --format=json | grep -E '"option_name":"(.*)"' | head -20 wp option delete ongebruikte_option_name ```
Verificatie
Controleer paginasnelheid met een tool:
```bash curl -o /dev/null -s -w "Time total: %{time_total}\n" https://jouwsite.nl ```
Normale laadtijd < 500ms.
Check PHP-opcache status:
```bash php -r "print_r(opcache_get_status());" ```
Zie `opcache_enabled` = true.
Veelgestelde problemen
Probleem: Paginacache werkt niet met Nginx en WP Rocket. Oplossing: Controleer of de Nginx-helper plugin is geactiveerd en configureer de cache location block correct.
Probleem: PHP-FPM crashes na worker config. Oplossing: Verlaag `pm.max_children` tot 4 en controleer RAM: `free -h`.
Probleem: Afbeeldingen worden niet in WebP geleverd. Oplossing: Installeer de Imagick PHP-extensie: `sudo apt install php8.2-imagick` en herstart PHP-FPM.
Door deze configuratie draait WordPress op je Pixzo VPS zonder overbodige databasequeries of onnodige PHP-processen. Wat is jouw grootste performance bottleneck?