# 403 Forbidden bij scrapen via een proxy: oorzaken en wat te doen

> Waarom een site 403 Forbidden antwoordt aan een scraper achter een proxy, hoe je blokkeringsverschil met een fout ziet, en wat je doet zonder de regels van de site te omzeilen.

- URL: https://crawlrelay.com/nl/docs/errors/403-forbidden/
- Laatst bijgewerkt: 2026-10-13
- Publisher: CrawlRelay (https://crawlrelay.com)

HTTP-statuscode (4xx, clientfout): het exacte bericht in elk hulpmiddel, de waarschijnlijke oorzaken in volgorde, en de oplossing die werkt.

**Kort antwoord — Wat betekent 403 Forbidden bij een proxy?**

**Een 403 Forbidden** betekent dat de server je verzoek begreep maar weigert te bedienen. Bij scrapen via CrawlRelay woonproxies komt een 403 bijna altijd van de doelsite of zijn firewall, niet van de proxy. Zoek uit waarom je meer verkeer stuurt: een verkeerd land, een missende header, een pagina achter een login, of een site die geen automatisch toegang toestaat.

## 403 Forbidden in één oogopslag

| Attribuut | Waarde |
| --- | --- |
| Fout | 403 Forbidden |
| Type | HTTP-statuscode (4xx, clientfout) |
| Verzonden door | Meestal de doelwebsite of zijn firewall; soms de proxy voor een geblokkeerde bestemming |
| Gedefinieerd in | RFC 9110, section 15.5.4 |
| Opnieuw proberen? | Een enkele keer, na een pauze en op een nieuw IP; herhaalde 403’s betekenen stop |
| Eerst controleren | Open dezelfde URL in een normale browser vanuit hetzelfde land |

## Wat betekent 403 Forbidden?

RFC 9110 definieert 403 als weigering: de server begreep het verzoek en zal het niet uitvoeren. In tegenstelling tot 401 helpen nieuwe inloggegevens niet. Een site kan de reden in de responsbody zetten, maar veel firewalls geven een korte generieke pagina.

Voor een scraper is 403 een beleidsboodschap. De site heeft besloten dat dit verzoek, van dit IP, met deze headers, op dit tempo, de pagina niet mag krijgen. Sommige inputs kan je verbeteren. Andere zeggen gewoon nee.

## Hoe ziet a 403 eruit in Python, curl, Node.js en browsers?

Dezelfde fout verschijnt anders in elk hulpmiddel. Dit zijn de berichten om in je logs te zoeken:

- **Python requests:** `r.status_code == 403`, vaak met een HTML-body van een firewall-leverancier
- **Scrapy:** `Ignoring response <403 https://...>: HTTP status code is not handled or not allowed`
- **curl:** `HTTP/2 403` in de verbose output
- **Playwright, Puppeteer:** navigatie slaagt maar `response.status()` geeft 403 en de pagina toont een toegang geweigerd boodschap

## Wat veroorzaakt a 403?

Waarschijnlijk eerst:

- **Geografie.** De inhoud wordt niet aangeboden in het land van het exit-IP, of de site serveert slechts één regio.
- **IP-reputatie.** De site blokkeert adresbereiken die ze associëren met geautomatiseerd verkeer. Datacenterbereiken worden vaker geblokkeerd dan woonbereiken.
- **Request fingerprint.** Missende of inconsistente headers, zoals geen `Accept-Language` of een browser User-Agent van een plain HTTP-client.
- **Tempo.** Te veel verzoeken in korte tijd vanuit één sessie, waardoor de firewall escaleert van 429 naar 403.
- **Toegangsregels.** De pagina vereist login, betaald account, of is uitgesloten voor crawlers in robots.txt of de gebruiksvoorwaarden.
- **Proxybeleid.** Sommige bestemmingen worden door de proxy zelf geweigerd. Bij CrawlRelay betreft dat categorieën in de Acceptable Use Policy.

## Hoe diagnosticeer ik a 403 stap voor stap?

1. Laad de URL in een normale browser vanuit hetzelfde land. Als het daar ook niet werkt, is de pagina niet openbaar in die locatie.
2. Vergelijk de headers die je scraper stuurt met die van de browser.
3. Controleer de robots.txt en voorwaarden van het doel op regels voor automatisch toegang.
4. Kijk naar het tijdspatroon: 403's die beginnen na N verzoeken duiden op tempo, niet op IP.

*Test de foutieve URL met curl (HTTP-poort, uitvoerig)*

```bash
# Use the URL that fails; with https://api.ipify.org instead, you test the gateway alone.
# "HTTP/1.1 200 Connection established" first, then the site's own status: the site answered.
curl -v -x http://USERNAME:PASSWORD@gw.crawlrelay.com:7777 https://TARGET_URL

# Same test through the SOCKS5 port, with DNS resolved at the exit
curl -v --socks5-hostname gw.crawlrelay.com:7778 --proxy-user USERNAME:PASSWORD https://TARGET_URL
```

## Hoe los ik a 403 op?

- **Kies het juiste land** met de `country-` parameter zodat je de editie ziet die lokale bezoekers zien.
- **Stuur eerlijke, volledige headers.** Identificeer je crawler in de User-Agent met een contact-URL, en stuur `Accept` en `Accept-Language` mee.
- **Vertraag.** Verlaag gelijktijdigheid per host en voeg vertraging toe. Zie [hoe je 403, 429 en CAPTCHAs aanpakt](https://crawlrelay.com/nl/guides/403-429-captcha/).
- **Respecteer een weigering.** Als een site opzettelijk automatische toegang blokkeert, zoek dan een officiële API, data-licentie of een publieke dataset. Het roteren van IP's om een bewuste blokkade te omzeilen valt buiten onze [Acceptable Use Policy](https://crawlrelay.com/nl/acceptable-use/).

## Moet ik opnieuw proberen na a 403?

Probeert een 403 op zijn hoogst eenmaal opnieuw, na pauze, op een nieuw IP. Eén retry onderscheidt een enkele geblokkeerde adres van een sitebrede regel. Als de tweede poging ook 403 geeft, stop dan met verzoeken naar dat URL-patroon en controleer je setup. Blijven pushen veroorzaakt een harde blokkade.

## Hoe geldt 403 Forbidden voor CrawlRelay?

Bij CrawlRelay stuurt een nieuwe verbinding zonder sessie-ID meestal via een ander woon-IP, dus een retry test normaal een vers adres. Hou hetzelfde land aan bij retry: wisselen verandert de content die je vergelijkt. Verzoeken naar bank-, overheid- en betaalportalen worden geweigerd door de gateway onder de AUP.

Gateway: `gw.crawlrelay.com`, poort 7777 (HTTP, HTTPS via CONNECT) en poort 7778 (SOCKS5). Gebruikersnaamformaat: `USERNAME-country-{cc}-state-{state}-city-{city}-zip-{zip}-asn-{asn}-session-{id}-ttl-{minutes}`. Gerelateerd: [429 Too Many Requests](https://crawlrelay.com/nl/docs/errors/429-too-many-requests/) · [401 vs 407](https://crawlrelay.com/nl/docs/errors/401-unauthorized/) · [Omgaan met 403, 429 en CAPTCHA's](https://crawlrelay.com/nl/guides/403-429-captcha/).

## 403 Forbidden: vragen die ontwikkelaars stellen

### Betekent een 403 dat mijn proxy-IP geblokkeerd is?

Niet noodzakelijk. Een 403 kan komen door het verkeerde land, ontbrekende headers, aanvraagtempo of een pagina die niet openbaar is. Test dezelfde URL vanuit een browser in hetzelfde land en vergelijk. Als een nieuw IP de pagina krijgt en het oude niet, is het oude IP gemarkeerd. Als elk IP een 403 krijgt, komt het door de regels van de site.

### Zullen woonproxies 403-fouten wegnemen?

Niet als algemene regel. Een residential exit in het juiste land of de juiste stad lost een 403 op die door een verkeerde locatie wordt veroorzaakt, omdat de site dan de lokale editie serveert. Als een site hostingranges filtert of crawlers weigert om geautomatiseerd verkeer buiten te houden, maakt een residential IP die toegang niet toegestaan. 403s veroorzaakt door headers, tempo of inlogmuren vereisen aanpassingen in je code.

### Is het legaal om door te blijven scrapen na een 403?

Een 403 is een duidelijk signaal dat de site de aanvraag weigert. Het omzeilen van technische barrières kan in meerdere landen juridische risico's met zich meebrengen, bijvoorbeeld onder anti-omzeilings- of computermisbruikwetgeving. Dit is geen juridisch advies. Lees onze overzicht over [web scraping wetten in 2026](https://crawlrelay.com/nl/guides/is-web-scraping-legal/) en vraag juridisch advies voor jouw situatie.

## Andere proxyfouten in deze referentie

- [401 Unauthorized vs 407](https://crawlrelay.com/nl/docs/errors/401-unauthorized/)
- [403 Forbidden](https://crawlrelay.com/nl/docs/errors/403-forbidden/)
- [407 Proxy Authentication Required](https://crawlrelay.com/nl/docs/errors/407-proxy-authentication-required/)
- [429 Too Many Requests](https://crawlrelay.com/nl/docs/errors/429-too-many-requests/)
- [502 Bad Gateway](https://crawlrelay.com/nl/docs/errors/502-bad-gateway/)
- [503 Service Unavailable](https://crawlrelay.com/nl/docs/errors/503-service-unavailable/)
- [504 Gateway Timeout](https://crawlrelay.com/nl/docs/errors/504-gateway-timeout/)
- [Cannot connect to proxy (ProxyError)](https://crawlrelay.com/nl/docs/errors/cannot-connect-to-proxy/)
- [Connection reset by peer (ECONNRESET)](https://crawlrelay.com/nl/docs/errors/connection-reset/)
- [ERR_PROXY_CONNECTION_FAILED](https://crawlrelay.com/nl/docs/errors/err-proxy-connection-failed/)
- [ERR_TUNNEL_CONNECTION_FAILED](https://crawlrelay.com/nl/docs/errors/err-tunnel-connection-failed/)
- [Read timed out (ReadTimeout)](https://crawlrelay.com/nl/docs/errors/read-timeout/)
- [SOCKS5 proxy errors](https://crawlrelay.com/nl/docs/errors/socks5-proxy-errors/)
- [SSL: CERTIFICATE_VERIFY_FAILED](https://crawlrelay.com/nl/docs/errors/ssl-certificate-verify-failed/)
- [SSL: WRONG_VERSION_NUMBER](https://crawlrelay.com/nl/docs/errors/ssl-wrong-version-number/)

**Residentiële proxy's met documentatie die de faalgevallen beschrijft** CrawlRelay residentiële proxy's van US$ 0,50/GB, verkeer dat nooit verloopt. [Zie prijslijst](https://crawlrelay.com/nl/pricing/) · [Snelle start](https://crawlrelay.com/nl/docs/)

---

CrawlRelay: CrawlRelay is een developer-first dienst met roterende residentiële proxy's en mobiele 4G-proxy's voor scrapers en AI-datastromen: niet-vervalverkeer op basis van pay-as-you-go vanaf US$ 0,50/GB, betaald in crypto, zonder ID-upload. Zonder KYC — geen ID, geen selfie, geen documenten. Betaal met crypto.
