Naar hoofdinhoud

403 Forbidden op je website: zo vind en los je de oorzaak op

Gepubliceerd op 9 november 2026 11 min leestijd

Krijg je een 403 Forbidden op je website of in WordPress? Zo zie je waar de melding vandaan komt en los je de oorzaak op, stap voor stap in Plesk.

Illustratie van een vrouw met een vergrootglas bij een stapel bestanden en een man die aan een draaiknop op een serverkast draait, met tussen hen een groot browservenster als poort, afgesloten door een oranje-witte slagboom

Een 403 Forbidden betekent dat de server de pagina wel vindt, maar weigert hem te tonen. Bij je hosting van LJPc zit de oorzaak bijna altijd in je website of in de instellingen van je domein: een regel in .htaccess, een beveiligingsmaatregel van WP Toolkit of een plugin, bestandsrechten, een ontbrekend indexbestand of de PHP-instelling run PHP as. Aan de foutpagina en het logboek in Plesk zie je welke het is, en daarna los je het meestal zelf op.

Hieronder lees je hoe je een 403 herkent, waar je de oorzaak vindt en wat je per oorzaak doet. Plesk staat in het Engels, daarom gebruiken we hier de Engelse namen. Ben je nieuw in Plesk, lees dan eerst wegwijs in Plesk.

Wat betekent 403 Forbidden?

Op elk verzoek van je browser antwoordt de server met een statuscode. Een 403 betekent: de server begrijpt wat je vraagt, maar geeft je er geen toegang toe. Dat is iets anders dan een pagina die niet bestaat of een server die vastloopt. Deze tabel helpt je de meldingen uit elkaar te houden.

Een 403 naast meldingen die erop lijken.
Wat je zietWat het betekentWaar je verder leest
403 ForbiddenHet bestand of de pagina bestaat, maar de server of je website weigert het te tonenDit artikel
401 Unauthorized, of een venster dat om een gebruikersnaam en wachtwoord vraagtDe map is beveiligd met een wachtwoord.htaccess: redirects, beveiliging en meer
404 Not FoundEr staat geen bestand op dat adresbestandsbeheer in Plesk
500, 502, 503 of een witte paginaEen fout in PHP, een plugin of .htaccessfoutlogboek bekijken in Plesk
Deze site is niet bereikbaar, met ERR_CONNECTION_REFUSEDJe krijgt geen verbinding met de server, vaak door een geblokkeerd IP-adresIP-adres geblokkeerd

Van wie komt de 403? Kijk eerst naar de foutpagina

De tekst op de foutpagina laat zien wie de toegang weigert: de webserver, een plugin in je website of een dienst die vóór je website staat.

Zo herken je waar een 403 vandaan komt.
Wat er op de pagina staatWaar de 403 vandaan komtWat je doet
Access to this resource on the server is denied!, met onderaan Proudly powered by LiteSpeed Web ServerDe webserver. Je site draait op een server met LiteSpeedZoek de oorzaak bij de oorzaken hieronder
You don't have permission to access this resource., met onderaan Apache Server at jouwdomein.nlDe webserver. Je site draait op een server met ApacheZoek de reden in het logboek en bij de oorzaken hieronder
You do not have permission to access this document., met het logo van LJPc hostingDe webserver, met de standaardfoutpagina van LJPc hostingZoek de oorzaak bij de oorzaken hieronder
A potentially unsafe operation has been detected in your request to this siteDe firewall van de WordPress-plugin WordfenceZie een beveiligingsplugin of Cloudflare houdt je tegen
Een pagina van Cloudflare met onderaan een Cloudflare Ray IDCloudflare, als je domein via Cloudflare looptZie een beveiligingsplugin of Cloudflare houdt je tegen
Een foutpagina in de stijl van je eigen websiteJe website toont een eigen foutpagina; de weigering zelf kan van de server of van een plugin komenZoek de reden in het logboek

Welke webserver je site gebruikt, zie je ook in je browser. Druk op F12, open het tabblad Network, laad de pagina opnieuw en klik op de bovenste regel. Staat bij Response Headers server: LiteSpeed, dan draait je site op LiteSpeed. Bij server: nginx draait hij op Apache, met nginx ervoor.

De oorzaak vinden in het logboek van Plesk

In het logboek van je website zie je welke adressen een 403 kregen. Op een server met Apache staat er ook bij waarom.

  1. Open Plesk vanuit het klantenportaal. Hoe dat werkt, lees je in Plesk openen vanuit het klantenportaal.
  2. Ga naar Websites & Domains en klik in de kaart van je domein op het tabblad Dashboard.
  3. Klik onder Dev Tools op Logs.
  4. Filter in de filterrij bij Code op 403. Je ziet nu alleen de bezoeken die een 403 kregen, met het geweigerde adres in de kolom Message.
  5. Weet je niet welke regel bij jou hoort, klik dan op Start real-time updates en laad de pagina met de 403 opnieuw. Met het filter IP houd je alleen de regels van je eigen IP-adres over.
  6. Zet het filter Code weer leeg, kies rechtsboven bij All logs voor Apache error en zoek bij Message op denied.
Meldingen in Apache error bij een 403.
MeldingWat het betekent
AH01630: client denied by server configurationEen regel weigert de toegang: in .htaccess of een beveiligingsmaatregel van WP Toolkit
AH01276: Cannot serve directory ...: No matching DirectoryIndex ... foundDe map heeft geen indexbestand, zoals index.php of index.html
Een regel met Permission deniedDe webserver mag het bestand of de map niet lezen

Draait je site op LiteSpeed, dan staat de reden van een 403 meestal niet in het logboek. Het geweigerde adres vind je wel met het filter Code. Het adres en het moment zeggen vaak al genoeg om de oorzaak hieronder te vinden. Meer over het logboek lees je in foutlogboek bekijken in Plesk.

Veelvoorkomende oorzaken en hoe je ze oplost

Waar je zoekt bij welke 403.
Wat er gebeurtMeest waarschijnlijke oorzaak
Je hele site of elk PHP-bestand geeft een 403, afbeeldingen en HTML werken welDe instelling run PHP as
Je hoofddomein of een map geeft een 403Een ontbrekend indexbestand
Eén bestand of map geeft een 403 na het uploadenBestandsrechten
Een 403 na een wijziging in .htaccess, of op een installatiescriptEen regel in .htaccess
xmlrpc.php, een PHP-bestand in wp-content/uploads of een SEO-tool krijgt een 403Een beveiligingsmaatregel van WP Toolkit
Een 403 bij het opslaan in WordPress of bij één handelingEen beveiligingsplugin of Cloudflare
Ineens 403's op veel plekken, terwijl je niets veranderdeBestanden die er niet horen

Je hele site of elk PHP-bestand geeft een 403

Laden je afbeeldingen en HTML-pagina's wel, maar geeft elk PHP-bestand een 403, ook een bestand dat je net hebt geüpload? En geeft een PHP-bestand dat niet bestaat wel een 404? Dan staat run PHP as waarschijnlijk op een FPM application, terwijl je site op een server met LiteSpeed draait. Op onze servers met LiteSpeed draait PHP als FastCGI application. Zo zet je het goed:

  1. Klik in Plesk op het Dashboard van je domein onder Dev Tools op PHP.
  2. Kijk bij run PHP as. Staat daar een keuze met FPM application, kies dan FastCGI application served by Apache.
  3. Laat de PHP-versie staan zoals hij is en klik onderaan op OK.
  4. Laad het PHP-bestand opnieuw.

Op onze servers met Apache is FPM application juist de standaard en werkt die goed. Geeft je site daar een 403 op PHP-bestanden, dan zit de oorzaak ergens anders. Zet dan je oude keuze terug en kijk in het logboek. Meer over deze pagina lees je in PHP-versie wijzigen in Plesk.

Je hoofddomein of een map geeft een 403

Krijg je een 403 op jouwdomein.nl of op jouwdomein.nl/map, dan ontbreekt er vaak een indexbestand. Een map zonder index.php of index.html laat de server niet zien, zodat niemand de lijst met je bestanden kan bekijken. In Apache error herken je het aan AH01276.

  • Staan je bestanden in een submap, bijvoorbeeld omdat je zip-bestand een map bevatte? Zet ze dan in httpdocs zelf.
  • Is je index.html of index.php weg, zet hem dan terug uit de Recycle Bin van File Manager of uit een back-up.

Hoe je bestanden verplaatst en terugzet, lees je in bestandsbeheer in Plesk.

Eén bestand of map geeft een 403 na het uploaden

Mag de webserver een bestand of map niet lezen, dan krijg je een 403. Dat gebeurt vooral na het uploaden met een programma dat eigen rechten meegeeft. Zet bestanden op 644 en mappen op 755. Hoe dat in Plesk gaat, staat in bestandsbeheer in Plesk. Gebruik nooit 777: dan mag iedereen het bestand wijzigen.

Een regel in .htaccess weigert de toegang

Een .htaccess-bestand kan bezoekers, IP-adressen of soorten bestanden weigeren. Kijk naar regels als Require all denied, Require not ip, Deny from all of een RewriteRule met [F] aan het eind. Een .htaccess in een hogere map geldt ook voor alle mappen eronder. Een bekend voorbeeld is de .htaccess van Drupal: die weigert PHP-bestanden in submappen die niet bij Drupal horen, dus ook een installatiescript dat je zelf in een submap uploadt.

  1. Open File Manager en zet bij More > View Options de optie Show system files and directories aan. Nu zie je .htaccess.
  2. Download .htaccess als reservekopie op je computer.
  3. Haal de regel weg die de toegang weigert en sla het bestand op.
  4. Weet je niet welke regel het is, hernoem het bestand dan tijdelijk, bijvoorbeeld naar .htaccess-uit, en test opnieuw. Werkt het dan, dan zit de oorzaak in dat bestand. Geef het daarna direct zijn oude naam terug, want zonder .htaccess werken bij WordPress de links naar je pagina's niet, en pas alleen die ene regel aan.

Hoe .htaccess werkt en hoe je zelf IP-adressen weigert, lees je in .htaccess: redirects, beveiliging en meer.

WordPress: een beveiligingsmaatregel van WP Toolkit

WP Toolkit in Plesk heeft beveiligingsmaatregelen die bepaalde verzoeken met een 403 weigeren. Ze beschermen je site, dus zet alleen de maatregel uit die je echt nodig hebt.

Maatregelen van WP Toolkit die een 403 kunnen geven.
Wat een 403 krijgtDe maatregel in WP Toolkit
xmlrpc.php, bijvoorbeeld bij Jetpack of een app die XML-RPC gebruiktBlock access to xmlrpc.php
Een PHP-bestand in wp-content/uploadsForbid execution of PHP scripts in the wp-content/uploads directory
Een PHP-bestand in wp-includes dat je rechtstreeks opentForbid execution of PHP scripts in the wp-includes directory
SEO-tools en scanners, zoals Ahrefs, Semrush en Majestic, of een script met python-requestsEnable bot protection
Een adres met ?author=1, de auteurspagina via het nummer van de auteurBlock author scans
Bestanden die eindigen op .log, .ini, .sh, .exe, .bat, .cmd, .csh of .psdBlock access to potentially sensitive files

Googlebot en Bingbot staan niet op de lijst van bot protection: Google en Bing blijven je site dus lezen.

  1. Klik in Plesk in het menu links op WordPress en zoek de kaart van je site.
  2. Klik op de melding onder Security, bijvoorbeeld Critical security measures applied.
  3. Vink in de lijst alleen de maatregel aan die de 403 geeft en klik op Revert.
  4. Test opnieuw. Wil je de maatregel later weer aanzetten, vink hem dan aan en klik op Secure.

Wil je de maatregel liever laten staan, zet het bestand dan op een andere plek. Een PHP-script hoort bijvoorbeeld niet in wp-content/uploads.

Een beveiligingsplugin of Cloudflare houdt je tegen

Beveiligingsplugins als Wordfence houden verzoeken tegen die op een aanval lijken. Soms raakt dat een gewone handeling, zoals het opslaan van een pagina met code erin. Wordfence toont dan A potentially unsafe operation has been detected in your request to this site.

  • Ben je beheerder en weet je zeker dat het een vals alarm is? Vink op die pagina I am certain this is a false positive. aan, klik op Allowlist This Action en herhaal je handeling.
  • Andere beveiligingsplugins houden in WordPress een eigen logboek bij, waarin je ziet wat er werd tegengehouden en waarom.
  • Kom je niet meer in WordPress, hernoem dan in File Manager de map van de plugin in wp-content/plugins, bijvoorbeeld naar pluginnaam-uit. WordPress zet de plugin dan uit. Geef de map zijn oude naam terug zodra je weer binnen bent.

Staat er onderaan de foutpagina een Cloudflare Ray ID, dan houdt Cloudflare het verzoek tegen. Zoek die Ray ID op bij Security Events in je Cloudflare-account: daar staat welke regel het verzoek blokkeerde.

Ineens 403's op veel plekken, terwijl je niets veranderde

Krijg je onverwacht een 403 op wp-admin of op veel pagina's, en staan er .htaccess-bestanden in mappen waar jij ze nooit neerzette? Dan kan je site besmet zijn. Sommige malware plaatst in veel mappen een .htaccess die PHP-bestanden weigert, zodat alleen de eigen scripts van de aanvaller werken. Wat je dan doet, lees je in malwaremelding ontvangen.

Kom je er niet uit? Dit stuur je ons

Maak een supportticket aan in het klantenportaal, dan zoeken wij het voor je uit. Zet erin:

  • het volledige adres dat de 403 geeft, bijvoorbeeld https://jouwdomein.nl/contact.php;
  • de datum en het tijdstip waarop je de 403 zag;
  • je IP-adres op dat moment, op te zoeken zoals in IP-adres geblokkeerd staat;
  • een schermafbeelding van de foutpagina;
  • wat er net daarvoor veranderde, zoals een upload, een update, een nieuwe plugin of een verhuizing.

Met het adres, het tijdstip en je IP-adres vinden we het verzoek terug in de logboeken van de server en zoeken we uit wat het tegenhoudt.

Veelgestelde vragen

Is een 403 een blokkade van mijn IP-adres?

Meestal niet. Blokkeert de beveiliging van onze servers je IP-adres na te veel foute inlogpogingen, dan krijg je helemaal geen verbinding, met een melding als ERR_CONNECTION_REFUSED. Zie je wel een 403-pagina, dan antwoordt de server dus. Een 403 die alleen jouw IP-adres treft, komt van een regel in .htaccess of van een beveiligingsplugin in je website.

Blokkeert een firewall van LJPc mijn PHP-script?

De firewall en fail2ban op onze servers houden aanvallers tegen voordat er een verbinding is; zij geven geen 403. Een 403 op een PHP-script komt van de instellingen van je domein of van je website zelf, zoals run PHP as, een regel in .htaccess, een maatregel van WP Toolkit of een beveiligingsplugin. Vind je de oorzaak niet, stuur ons dan het adres en het tijdstip, dan zoeken wij het uit.

Waarom geeft xmlrpc.php een 403?

Dan staat in WP Toolkit de beveiligingsmaatregel Block access to xmlrpc.php aan. Die beschermt je site tegen aanvallen via XML-RPC. Gebruik je een dienst die XML-RPC nodig heeft, zoals Jetpack, zet dan alleen deze maatregel uit met Revert onder Security op de kaart van je site.

Waarom krijgen SEO-tools als Ahrefs of Semrush een 403 en Google niet?

De maatregel Enable bot protection van WP Toolkit weigert een vaste lijst bots, waaronder AhrefsBot, SemrushBot en de bot van Majestic. Googlebot en Bingbot staan niet op die lijst. Wil je een SEO-tool je site laten scannen, zet de maatregel dan tijdelijk uit en daarna weer aan met Secure.

Mag ik mijn bestanden op 777 zetten om een 403 op te lossen?

Nee. Met 777 mag iedereen op de server het bestand wijzigen, en dat is een groot beveiligingsrisico. Zet bestanden op 644 en mappen op 755; daarmee kan de webserver alles lezen wat hij nodig heeft.

Kan ik bezoekers een eigen 403-pagina laten zien?

Ja. Met de regel ErrorDocument 403 /403.html in .htaccess toont de server je eigen pagina in plaats van de standaardfoutpagina. Hoe dat werkt, lees je in het artikel over .htaccess.

Toch liever iemand spreken?

We geven je ook graag persoonlijk antwoord op je vragen. Plan een gratis adviesgesprek of bel ons direct. We denken graag met je mee.

Blijf op de hoogte van recente ontwikkelingen! Schrijf je in en ontvang onze nieuwsbrief Bezig met aanmelden...