De browser probeert uw website te laden, blijft een paar seconden hangen en geeft dan op: “Deze pagina werkt niet. Er zijn te veel omleidingen.” In Chrome staat er ERR_TOO_MANY_REDIRECTS bij, in Firefox “De pagina wordt niet goed omgeleid”. Er is geen wit scherm, geen foutcode van de server, en de site lijkt vanuit het beheer van uw hostingpartij gewoon online. Toch komt niemand erop.
Deze melding over te veel omleidingen in WordPress heeft bijna altijd een simpele oorzaak: twee instellingen die elkaar tegenspreken. De ene stuurt de bezoeker van A naar B, de andere van B terug naar A. De browser doet dat een stuk of twintig keer en stopt dan. In dit artikel leest u waar die tegenspraak vandaan komt en in welke volgorde u de oorzaak opspoort.
Hoe een redirect-lus ontstaat
Een omleiding is normaal en nuttig. Van http naar https, van zonder www naar met www, van een oude naar een nieuwe pagina. WordPress voert zelf ook omleidingen uit, bijvoorbeeld naar het adres dat u onder Instellingen, Algemeen heeft opgegeven. Daarnaast doen plugins, het .htaccess-bestand, de hostingpartij en een eventuele dienst als Cloudflare ieder hun eigen omleidingen.
Zolang al die lagen dezelfde kant op wijzen, merkt u er niets van. Een lus ontstaat zodra twee lagen het oneens zijn. Laag één zegt: ga naar https. Laag twee ziet het verzoek binnenkomen, denkt dat het http is, en stuurt terug. Dat gaat door tot de browser ingrijpt. De kunst is dus niet om “de omleiding” te vinden, maar om te vinden welke twee elkaar tegenwerken.
De meest voorkomende oorzaken van te veel omleidingen in WordPress
1. Cloudflare met SSL op “Flexible”
Dit is verreweg de nummer één. Bij de instelling Flexible praat Cloudflare versleuteld met de bezoeker, maar onversleuteld met uw server. Als uw site zelf ook naar https doorstuurt, ziet WordPress een http-verzoek binnenkomen en stuurt het naar https, waarna Cloudflare het weer als http aanbiedt. Oplossing: zet de SSL-modus in Cloudflare op Full of Full (strict), mits uw server een geldig certificaat heeft.
2. Site-URL en WordPress-URL kloppen niet
Onder Instellingen, Algemeen staan twee adressen. Staat daar http terwijl de server naar https doorstuurt, of staat er www terwijl een plugin de www juist weghaalt, dan ontstaat een lus. Ook na een verhuizing of het kopiëren van een staging-site naar live komt dit voor, omdat de oude adressen in de database blijven staan.
3. Dubbele HTTPS-omleiding
Een regel in .htaccess, een beveiligingsplugin met “forceer SSL” én een instelling bij de hostingpartij. Drie keer hetzelfde is meestal geen probleem, maar als één van de drie net iets anders formuleert, bijvoorbeeld met of zonder www, is de lus geboren.
4. Een omleiding in een plugin die zichzelf tegenspreekt
Redirect-plugins waarin per ongeluk een regel van /pagina-a naar /pagina-b staat en een andere van /pagina-b naar /pagina-a. Of een regel die alles onder een bepaald pad omleidt, inclusief het doel zelf. Deze lus treft dan meestal maar een deel van de site.
5. Een reverse proxy die HTTPS niet doorgeeft
Bij sommige hostingomgevingen staat een tussenserver die de versleuteling afhandelt. WordPress ziet dan intern http en denkt dat het niet veilig is. Hiervoor bestaat een aanpassing in wp-config.php die WordPress vertelt om naar de header van de proxy te kijken. Dit is technischer, maar goed te doen voor uw hostingpartij.
6. Verkeerd ingestelde cookies of cache
Soms zit de lus alleen in uw eigen browser, omdat een oude omleiding in de cache staat. Dat merkt u doordat de site in een privévenster wel werkt.
Stappenplan om de oorzaak te vinden
- Test in een privévenster of op uw telefoon via 4G. Werkt het daar wel, dan is het uw browsercache. Wis de cookies en cache voor dit domein en u bent klaar.
- Gebruikt u Cloudflare? Controleer de SSL/TLS-modus. Staat die op Flexible, zet hem op Full (strict). Wacht een minuut en test opnieuw.
- Bekijk de omleidingsketen. Een gratis online redirect-checker toont u precies welke stappen de browser zet: van http naar https naar www naar weer http. Daarin ziet u vaak meteen welke twee lagen elkaar tegenspreken.
- Controleer de adressen in de database. Als u niet meer kunt inloggen, kan uw hostingpartij of een specialist de waarden siteurl en home in de tabel wp_options bekijken. Beide moeten exact hetzelfde protocol en dezelfde www-keuze hebben als de omleiding op de server.
- Kijk in .htaccess. Zoek naar regels met RewriteRule en https. Zet tijdelijk een hekje voor de omleidingsregels en test. Werk hier alleen in met een kopie van het bestand achter de hand.
- Schakel redirect- en beveiligingsplugins uit. Kan dat niet via het beheer, dan hernoemt u de pluginmap via FTP. Verdwijnt de lus, dan weet u waar hij zat.
- Vraag uw hostingpartij naar een proxy of geforceerde SSL-instelling als bovenstaande stappen niets opleveren.
Praktijkvoorbeeld: een hoveniersbedrijf in Amersfoort
Een hovenier uit Amersfoort had zijn site laten overzetten naar een nieuwe hostingpartij. Dezelfde avond nog: te veel omleidingen, op elke pagina. De verhuizer was onbereikbaar. Bij het bekijken van de omleidingsketen zagen we dat de nieuwe hosting standaard naar https doorstuurde, terwijl in de database nog http stond als site-adres. WordPress stuurde dus terug. Eén aanpassing van twee waarden in de database en de site deed het weer. De hele analyse duurde korter dan het telefoontje. Dit soort verrassingen na een overstap komt vaker voor; in de controlelijst na een verhuizing staat waar u dan op let.
Wanneer u hulp inschakelt
De stappen 1 tot en met 3 kan iedereen doen. Vanaf stap 4 werkt u in de database of in serverbestanden, en daar kan een tikfout meer kapotmaken dan de lus zelf. Als u niet kunt inloggen en geen ervaring heeft met FTP of phpMyAdmin, is dit een goed moment om de storing te laten verhelpen in plaats van te experimenteren. Een redirect-lus is voor een specialist meestal binnen een uur gevonden en opgelost, en de kosten daarvan vallen bijna altijd lager uit dan een dag zonder bereikbare website.
Voorkomen
Kies één plek om de https- en www-omleiding te regelen, bij voorkeur bij de hostingpartij of in .htaccess, en zet dezelfde optie niet nog eens aan in een plugin. Controleer na elke verhuizing of overstap op Cloudflare direct de site-adressen onder Instellingen, Algemeen. En noteer welke omleidingen waar staan, zodat u bij een volgende melding niet hoeft te raden. Wie dat eenmaal op orde heeft, komt deze foutmelding zelden nog tegen.


