Senza KYC — niente documento, selfie o altri documenti. Paga in crypto: BTC, USDT, USDC, ETH, SOL, LTC
Lingua: Italiano
Inizia ora

Riferimento errori proxy · Codici di stato HTTP

401 Unauthorized vs 407 Proxy Authentication Required

Codice di stato HTTP (4xx, errore client): il messaggio esatto in ogni strumento, le cause probabili in ordine e la soluzione che funziona.

Ultimo aggiornamento: · 4 minuti di lettura

Risposta rapida

Cosa significa 401 Unauthorized vs 407 con un proxy?

Un 401 Unauthorized viene dal sito; un 407 dal proxy. Se fai scraping con proxy residenziali CrawlRelay e ottieni 401, il proxy ti ha accettato e il sito chiede il suo login o API key. Le credenziali proxy lì non servono. Correggi 407 nella URL del proxy e gestisci 401 secondo le regole del sito per i contenuti protetti.

401 Unauthorized vs 407 a colpo d'occhio

Errore401 Unauthorized vs 407
TipoCodice di stato HTTP (4xx, errore client)
Inviato daIl sito target, mai il proxy
Definito inRFC 9110, section 15.5.2 (compare 407: section 15.5.8)
Riprovarlo?No. Un 401 richiede le credenziali per il sito stesso
Prima verificaControlla quale server lo ha inviato: il sito (401) o il proxy (407)

Cosa significa 401 Unauthorized vs 407?

RFC 9110 accoppia questi codici. Un 401 porta un header WWW-Authenticate e chiede credenziali per il server originario. Un 407 porta un header Proxy-Authenticate e chiede credenziali per il proxy. Le risposte vanno in header diversi: Authorization per il sito e Proxy-Authorization per il proxy.

Confonderli è comune perché entrambi parlano di "autenticazione". Il modo più rapido è guardare il codice stato: 401 significa che sei passato dal proxy.

Com'è a 401 in Python, curl, Node.js e browser?

Lo stesso errore si presenta in modo diverso in ogni strumento. Questi sono i messaggi da cercare nei log:

  • Python requests: status_code == 401 con header WWW-Authenticate (sito) contro ProxyError con 407 (proxy)
  • curl: HTTP/2 401 dopo un CONNECT riuscito (sito) contro CONNECT tunnel failed, response 407 (proxy)
  • API: un JSON come {"message": "Unauthorized"} o un messaggio token invalido

Cosa causa a 401?

Probabilmente prima:

  • La pagina o API richiede login o key. Lo chiede il sito, non il proxy.
  • Credenziali proxy nel posto sbagliato, ad esempio un header Authorization per il proxy che il sito rifiuta.
  • Cookie o token di sessione scaduti in un flusso multi-step.
  • Token legato a IP o regione, quindi un’exit nuova lo invalida.

Come diagnostico a 401 passo dopo passo?

  1. Conferma il codice: 401 è del sito, 407 del proxy.
  2. Fai il test curl qui sotto. Se vedi HTTP/1.1 200 Connection established prima del 401, il proxy va bene.
  3. Controlla se lo stesso URL richiede login in un browser normale.
  4. In un flusso multi-step, controlla se il 401 compare quando cambia l’IP exit.
Testa l'URL che fallisce con curl (porta HTTP, verbose)
# 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:[email protected]: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

Come risolvo a 401?

  • Per problemi proxy (407) metti le credenziali nella URL proxy o nelle impostazioni proxy client, mai in un header Authorization.
  • Per API pubbliche con key, registrati sul sito e invia la key come indicato.
  • Per sessioni legate a IP, usa sessioni sticky per tutto il flusso.
  • Per contenuti dietro login, rispetta i termini del sito prima di automatizzare. Fare scraping di account non tuoi o dati personali protetti è fuori dalla nostra Acceptable Use Policy.

Devo riprovare dopo a 401?

Non riprovare un 401 a occhi chiusi. Chiede qualcosa che la tua richiesta non ha. Aggiorna token o sessione se il tuo flusso ne ha uno, poi prova una volta. Ripetuti 401 significano contenuto non pubblico o accesso terminato.

Come si applica 401 Unauthorized vs 407 a CrawlRelay?

Un proxy HTTP segnala i problemi di credenziali suoi con 407 o tunnel fallito, non con 401. Se vedi 401 usando il gateway CrawlRelay, la richiesta ha raggiunto il sito, focalizzando il problema rapidamente.

Gateway: gw.crawlrelay.com, porta 7777 (HTTP, HTTPS tramite CONNECT) e porta 7778 (SOCKS5). Formato username: USERNAME-country-{cc}-state-{state}-city-{city}-zip-{zip}-asn-{asn}-session-{id}-ttl-{minutes}. Correlato: 407 Proxy Authentication Required · 403 Forbidden · Sessions guide.

401 Unauthorized vs 407: domande frequenti dagli sviluppatori

Perché ricevo un 401 se la password proxy è corretta?

Perché 401 riguarda il sito, non il proxy. Il login proxy è andato a buon fine, e il sito vuole sue credenziali, tipo API key, cookie di login o token. Controlla la documentazione del sito. Se il contenuto è protetto da login non autorizzato, non automatizzarlo.

Una sessione sticky può risolvere errori 401?

A volte. Alcuni siti legano sessioni o token all’IP che li ha creati, quindi un’exit nuova invalida il token e il sito risponde 401. Tenere una sessione sticky per tutto il flusso evita questo. Non aiuta se servono credenziali che non hai.

Dove vanno le credenziali proxy in una richiesta HTTP?

Nell’header Proxy-Authorization che il client costruisce dalla parte user:password@ della URL proxy. Il sito non vede mai quell’header, perché il proxy lo rimuove. Le credenziali sito vanno nell’header Authorization o nel cookie che il proxy lascia passare senza modifiche.

Altri errori proxy in questo riferimento

Codici di stato HTTP

Errori del browser e client

Errori di connessione e TLS

Proxy residenziali con documentazione che copre i casi di errore

Proxy residenziali CrawlRelay da 0,50 USD/GB, traffico che non scade mai.

Da 0,50 USD/GB · senza KYC

Inizia ora