Cambia lingua
Italiano English Русский Deutsch Español Français Українська Tiếng Việt Türkçe Bahasa Indonesia हिन्दी 日本語 中文
Menu
Prezzi
Proxy
TIPI DI PROXY
PER POSIZIONE77 posizioni
Soluzioni
Risorse

Come usare un proxy solo per alcuni siti in Chrome

Indice
  1. Chrome ha un’impostazione proxy per sito?
  2. Che cosa fa uno script PAC?
  3. In quali modi posso dare a Chrome uno script PAC?
  4. Ogni scheda può usare un proxy diverso?
  5. Perché una regola con un percorso non funziona sui siti HTTPS?
  6. Quale modo scegliere?
  7. Risposte rapide

In breve: Chrome su desktop non ha un’impostazione che applichi un proxy a siti specifici. Usa una sola configurazione proxy per tutta la navigazione, presa dal sistema operativo, da un flag di avvio, da una policy dell’amministratore o da un’estensione. Per mandare solo alcuni siti attraverso un proxy, Chrome ha bisogno di uno script PAC, una breve funzione che sceglie un proxy per ogni richiesta, che scrivi tu o che un’estensione costruisce a partire da regole.

Per usare un proxy solo per alcuni siti in Chrome, dai al browser uno script PAC che elenca i siti, e Chrome lo consulta a ogni richiesta. Lo script può arrivare da tre posti: il sistema operativo, un Chrome avviato a parte, o un’estensione.

Chrome ha un’impostazione proxy per sito?

No. La pagina delle impostazioni di Chrome ha una sola voce sul proxy, intitolata «Open your computer’s proxy settings» (apri le impostazioni proxy del computer), e Chromium descrive quelle impostazioni come valide per l’intero computer (le stringhe delle impostazioni di Chromium).

Le note di Chromium sul proxy elencano quattro posti da cui Chrome può prendere la sua configurazione proxy: una policy dell’amministratore, i flag della riga di comando, un’estensione e il sistema operativo. Quello in vigore fornisce una sola configurazione per tutto ciò che il browser carica, e una decisione per sito vive dentro quella configurazione, sotto forma di script PAC.

Che cosa fa uno script PAC?

Uno script PAC (proxy auto-configuration, configurazione automatica del proxy) è una funzione JavaScript chiamata FindProxyForURL. Chrome la chiama per ogni richiesta con l’indirizzo e il nome host, e usa la stringa che restituisce: DIRECT per nessun proxy, oppure PROXY host:port per un server proxy, come documenta il riferimento PAC di MDN.

Questo script manda un dominio e i suoi sottodomini attraverso un proxy e tutto il resto direttamente. L’indirizzo del proxy viene da un intervallo riservato alla documentazione (RFC 5737); metti il tuo al suo posto.

function FindProxyForURL(url, host) {
  if (host === "example.com" || dnsDomainIs(host, ".example.com")) {
    return "PROXY 203.0.113.10:8080";
  }
  return "DIRECT";
}

Aggiungi una condizione per ogni sito che vuoi far passare dal proxy. Il return finale decide che cosa succede a ogni sito che non è in elenco.

In quali modi posso dare a Chrome uno script PAC?

Tre: attraverso le impostazioni proxy di sistema, attraverso un Chrome avviato a parte, o attraverso un’estensione. Si differenziano per quanta parte del computer toccano e per come una modifica entra in vigore.

Attraverso le impostazioni proxy di sistema

Su Windows, le impostazioni proxy hanno un’opzione «setup script» (script di installazione) che accetta l’indirizzo dello script, come mostra la guida di Microsoft, e Chrome segue l’impostazione di sistema. Lo script deve essere raggiungibile a un URL. Lo userà anche ogni applicazione che legge le impostazioni proxy di sistema, quindi questo modo si adatta a uno script pensato per tutta la macchina.

In un’istanza separata di Chrome

Chrome accetta flag proxy all’avvio, elencati nella pagina di Chromium sulle impostazioni di rete: --proxy-server indica un proxy, --proxy-bypass-list indica gli host che lo saltano, e --proxy-pac-url punta a uno script. Avviato con il proprio --user-data-dir, il secondo Chrome gira accanto a quello che usi di solito, dato che due istanze in esecuzione non possono condividere una directory dei dati (le note di Chromium sulla directory dei dati utente).

google-chrome --user-data-dir="$HOME/chrome-proxied" --proxy-server="http://203.0.113.10:8080"

Quell’istanza manda tutto il suo traffico attraverso il proxy, quindi è la finestra in cui apri un sito a deciderne il percorso. Cambiare proxy significa chiudere l’istanza e avviarla di nuovo con nuovi flag.

Con un’estensione proxy

Un’estensione imposta il proxy di Chrome per il profilo in cui è installata, attraverso la API chrome.proxy, e uno switcher con regole le compila in uno script PAC. La nostra estensione gratuita ProxyJam Connector funziona così, in Chrome e in Microsoft Edge:

  1. Aggiungi un profilo con host, porta e protocollo del proxy.
  2. Aggiungi una regola, per esempio «Domain + subdomains» (dominio e sottodomini) con example.com, che punti a quel profilo. Vince la prima regola che corrisponde a un sito.
  3. Lascia il fallback su Direct, così i siti che non corrispondono a nessuna regola si connettono senza proxy.
  4. Scegli Auto nel popup della barra degli strumenti.

Per un sito che corrisponde, lo script di Connector indica quel solo proxy senza alcuna opzione diretta dopo. Se il proxy non risponde, il sito non si carica e il tuo indirizzo non viene mai usato per esso.

Ogni scheda può usare un proxy diverso?

Non in Chrome. La API chrome.proxy salva un solo valore per profilo e non accetta una scheda come parametro, quindi una scheda non ha nulla di proprio da impostare.

L’unità praticabile è un profilo o un’istanza. Crea un secondo profilo di Chrome per il lavoro tramite proxy e installaci l’estensione, oppure avvia una seconda istanza con i suoi flag, e tieni le due finestre affiancate. Ogni finestra porta allora il proprio proxy.

Perché una regola con un percorso non funziona sui siti HTTPS?

Chrome dà a uno script PAC solo lo schema, l’host e la porta di un indirizzo https://. Dalla versione 52 di Chrome percorso, query e frammento vengono eliminati, e l’opzione che disattivava questo comportamento è stata rimossa in Chrome 75 (le note di Chromium sul proxy).

Una regola come example.com/shop/* quindi non corrisponde a nessuna pagina HTTPS. Scrivi le regole sul nome host, e dai a una sezione di un sito il suo sottodominio se le serve un percorso proprio. Gli indirizzi http:// semplici arrivano ancora allo script con il loro percorso, anche se Chromium sconsiglia di farci affidamento. Connector mostra un avviso accanto a ogni regola che dipende dal percorso.

Quale modo scegliere?

Per pochi siti e un solo proxy, un’estensione è la via con meno lavoro, e la pagina dell’estensione elenca che cosa Connector può e non può fare su Chrome. Un proxy che chiede una password è trattato in perché Chrome continua a chiedere nome utente e password del proxy, e il trasferimento delle regole da uno switcher più vecchio in che cosa è cambiato con Manifest V3. Configurare un profilo e un proxy per paese per vedere come appare il tuo sito in ogni mercato è trattato in vedere il tuo sito da un altro paese.

Se il proxy attraverso cui instradi quei siti deve tenere un solo indirizzo nella rete di un provider internet, quello è un proxy ISP. ProxyJam vende proxy residenziali statici (ISP) nella pagina dei proxy ISP, con i prezzi nella pagina dei prezzi.

Da dove arriva l'instradamento, e che cosa tocca ciascun modo

La portata viene dalla documentazione di Chromium su dove vengono lette le impostazioni proxy e dalle descrizioni dei flag stessi; il resto discende da come si configura ciascun metodo. Non abbiamo misurato velocità né affidabilità. Dovunque sia uno script PAC a decidere il percorso, Chrome gli passa un indirizzo HTTPS solo come schema, host e porta.
Impostazioni proxy di sistemaUn'istanza separata di ChromeUn'estensione proxy
Che cosa toccaOgni applicazione del computer che legge le impostazioni di sistemaSolo le finestre di quell'istanzaIl profilo di Chrome in cui è installata l'estensione
Come vengono scelti i sitiDa uno script PAC pubblicato a un URLDalla finestra in cui apri un sitoDa regole che l'estensione trasforma in uno script PAC
Modificare la configurazioneModifica lo script pubblicatoChiudi e riavvia con nuovi flagModifica una regola nell'estensione
Un proxy che chiede una passwordChrome la chiede in una finestra di dialogoChrome la chiede in una finestra di dialogoL'estensione può rispondere per i proxy HTTP e HTTPS

Conferma quale percorso ha preso un sito

  1. Metti una pagina di verifica nell'elenco per un minuto

    Aggiungi proxyjam.com ai siti che il tuo script o le tue regole mandano attraverso il proxy, accanto ai siti che ti interessano.

  2. Apri la pagina di verifica

    Qual è il mio IP mostra l’indirizzo che l’ha raggiunta, e il provider internet e la rete (ASN) a cui quell’indirizzo appartiene. Entrambi dovrebbero essere quelli del proxy.

  3. Toglila dall'elenco e ricarica

    Ora la pagina dovrebbe mostrare la tua connessione. Se entrambe le letture sono quelle attese, i siti in elenco passano dal proxy e gli altri si connettono direttamente.

Risposte rapide

L'elenco di esclusione di Chrome fa la stessa cosa?

Fa il contrario. Il flag --proxy-bypass-list indica gli host che saltano il proxy, e ha effetto solo insieme a --proxy-server, quindi tutto ciò che non è nell'elenco passa dal proxy. Per mandare attraverso il proxy un breve elenco di siti e lasciare diretti gli altri, usa uno script PAC.

Le finestre in incognito usano lo stesso proxy?

Sì, per impostazione predefinita. La documentazione dell'API proxy di Chrome dice che le finestre in incognito ereditano le impostazioni delle finestre normali, e un'estensione può impostare un valore separato per l'incognito quando le serve.

Perché Chrome dice che sta usando le impostazioni proxy di un'estensione?

Un'estensione ha impostato il proxy, e Chrome lascia che un'estensione o una policy dell'amministratore decida l'impostazione al posto di quella di sistema. Disattiva l'estensione, o passala a Direct (connessione diretta), per restituire il controllo.

Che cosa succede ai siti che non corrispondono a nessuna regola?

Ricevono quello che lo script restituisce per ultimo. Nello script di esempio è DIRECT, quindi i siti senza corrispondenza si connettono senza proxy. ProxyJam Connector lo chiama fallback e lo imposta su Direct finché non scegli altrimenti. Estensione browser

Fonti