File PAC proxy browser: proxy solo per certi siti
Un file PAC proxy browser permette di decidere automaticamente quali siti devono passare da un proxy e quali devono usare la connessione diretta. Il file contiene una funzione JavaScript, FindProxyForURL(), che analizza l’indirizzo richiesto e restituisce una regola come PROXY proxy.example.com:8080 oppure DIRECT. Questa configurazione è utile per reti aziendali, test, accesso a servizi interni e separazione del traffico. Il metodo funziona con Google Chrome, Microsoft Edge e Mozilla Firefox, ma il percorso per attivarlo cambia in base al browser e al sistema operativo.
Come funziona un file PAC proxy browser
Un file PAC, cioè Proxy Auto-Configuration, è un normale file di testo con estensione .pac. Il browser legge la funzione FindProxyForURL(url, host) prima di effettuare una richiesta e usa il risultato per scegliere tra proxy e connessione diretta.
La variabile url contiene l’indirizzo completo, mentre host contiene soltanto il dominio. La funzione può quindi applicare regole a un sito preciso, a un dominio e ai suoi sottodomini oppure a un gruppo di indirizzi.
Una regola PAC usa generalmente queste istruzioni:
PROXY nome-host:portainvia la richiesta a un proxy HTTP o HTTPS.SOCKS5 nome-host:portausa un proxy SOCKS5, se supportato dal browser e dalla configurazione di rete.DIRECTbypassa il proxy e utilizza la connessione normale.PROXY proxy:8080; DIRECTprova il proxy e passa direttamente alla rete se il proxy non risponde.
Per evitare problemi di compatibilità, è preferibile pubblicare il file PAC tramite un indirizzo HTTP o HTTPS raggiungibile dal dispositivo, ad esempio https://intranet.example.com/config/proxy.pac. L’uso di un file locale file:/// dipende dal browser, dal sistema operativo e dalle policy di sicurezza applicate.
Come creare le regole PAC per siti specifici
Passo 1: prepara il file proxy.pac
Apri un editor di testo semplice e inserisci una funzione di questo tipo:
function FindProxyForURL(url, host) {
if (dnsDomainIs(host, "servizio-interno.example.com")) {
return "PROXY proxy.example.com:8080";
}
if (dnsDomainIs(host, ".azienda.example")) {
return "PROXY proxy.example.com:8080";
}
return "DIRECT";
}
La prima regola instrada soltanto servizio-interno.example.com. La seconda regola intercetta il dominio azienda.example e i suoi sottodomini, come posta.azienda.example o vpn.azienda.example.
La funzione dnsDomainIs() confronta il nome dell’host con il dominio indicato. Per includere il dominio principale e tutti i sottodomini in modo esplicito, puoi usare una condizione composta:
function FindProxyForURL(url, host) {
if (host == "example.com" || dnsDomainIs(host, ".example.com")) {
return "PROXY proxy.example.com:8080";
}
return "DIRECT";
}
Questa forma evita di confondere example.com con domini simili, come notexample.com. Il punto iniziale in .example.com limita il confronto ai sottodomini corretti.
Passo 2: aggiungi più siti alla stessa regola
Per applicare lo stesso proxy a diversi domini, usa l’operatore logico ||:
function FindProxyForURL(url, host) {
if (host == "portale.example" ||
dnsDomainIs(host, ".servizi.example") ||
dnsDomainIs(host, ".partner.example")) {
return "PROXY proxy.example.com:8080; DIRECT";
}
return "DIRECT";
}
In questo esempio il browser tenta prima il proxy sulla porta 8080. Se il proxy non è disponibile, prova la connessione diretta perché la regola termina con DIRECT. Se il requisito di sicurezza impone che i siti selezionati non possano mai bypassare il proxy, rimuovi ; DIRECT e restituisci soltanto PROXY proxy.example.com:8080.
Passo 3: limita il proxy a determinati protocolli o percorsi
Il file PAC può analizzare anche l’URL completo. La seguente regola usa il proxy soltanto per richieste HTTPS verso un dominio:
function FindProxyForURL(url, host) {
if (url.indexOf("https://area-riservata.example/") == 0) {
return "PROXY proxy.example.com:8080";
}
return "DIRECT";
}
La verifica dell’URL completo richiede attenzione: una differenza nel protocollo, nel percorso o nella barra finale può impedire l’applicazione della regola. Per la maggior parte dei casi è più affidabile filtrare il dominio tramite host.
Salva il file con il nome proxy.pac, assicurandoti che l’editor non aggiunga l’estensione .txt. Se il file viene pubblicato su un server web, il server dovrebbe restituirlo con un tipo MIME coerente, preferibilmente application/x-ns-proxy-autoconfig o application/javascript.
Come attivare il file PAC in Chrome, Edge e Firefox
Passo 1: usa le impostazioni di sistema per Chrome ed Edge
Google Chrome e Microsoft Edge utilizzano normalmente le impostazioni proxy del sistema operativo. Su Windows 11, apri Impostazioni > Rete e Internet > Proxy, attiva Usa script di configurazione e inserisci l’indirizzo completo del file PAC, per esempio:
https://intranet.example.com/config/proxy.pac
Salva la configurazione e riavvia le schede interessate. In alcune installazioni aziendali, le impostazioni possono essere bloccate da criteri amministrativi e il campo dello script può risultare non modificabile.
Su macOS, il percorso è Impostazioni di Sistema > Rete > [connessione] > Dettagli > Proxy. Attiva Configurazione automatica proxy, quindi inserisci l’URL del file PAC nel campo dedicato. Google Chrome e Microsoft Edge leggeranno generalmente questa configurazione di macOS.
Passo 2: configura Mozilla Firefox
Mozilla Firefox può usare una configurazione proxy separata da quella del sistema. Apri Impostazioni > Generale, scorri fino a Impostazioni di rete e seleziona Impostazioni…. Nella finestra successiva scegli URL di configurazione automatica del proxy, inserisci l’indirizzo HTTPS del file PAC e conferma con OK.
L’opzione Rileva automaticamente le impostazioni proxy per questa rete non equivale necessariamente all’uso del file PAC indicato manualmente. Per applicare un file specifico, seleziona l’opzione relativa all’URL di configurazione automatica.
Passo 3: verifica il comportamento delle regole
Apri un sito incluso nel file PAC e controlla i registri del proxy o gli strumenti di amministrazione della rete. Poi visita un dominio non incluso: dovrebbe usare la connessione diretta quando la funzione restituisce DIRECT.
Un sito HTTPS non mostra necessariamente un proxy nell’indirizzo visualizzato. Il browser crea infatti una connessione al proxy e usa il metodo CONNECT per raggiungere il server HTTPS; la presenza del proxy deve essere verificata nei log del proxy, nei registri di rete o nella configurazione del browser.
Sicurezza, autenticazione e problemi frequenti
Un file PAC non protegge il traffico e non cifra automaticamente la connessione. Il file contiene soltanto regole di instradamento, quindi il proxy deve essere affidabile e configurato con criteri di autenticazione e registrazione adeguati.
Evita di inserire nel file PAC password, token o credenziali. Le credenziali del proxy devono essere gestite dal browser, dal sistema operativo o da un sistema aziendale dedicato, non scritte in chiaro nel codice JavaScript.
Il file PAC deve essere raggiungibile prima che il browser possa applicare le sue regole. Se il file è ospitato sullo stesso dominio che dovrebbe essere raggiunto tramite proxy, assicurati che l’accesso iniziale al file non dipenda da una regola circolare.
Un errore di sintassi JavaScript può rendere inefficace l’intera configurazione. Mantieni la funzione semplice, usa parentesi e virgolette coerenti e prova ogni dominio separatamente. Se il proxy richiede autenticazione, una risposta 407 Proxy Authentication Required indica che il server proxy ha ricevuto la richiesta ma attende credenziali valide.
Il riferimento tecnico di Mozilla sui file PAC descrive la funzione FindProxyForURL() e i valori che può restituire. Per reti gestite, verifica anche le policy dell’organizzazione, perché possono sovrascrivere le impostazioni manuali del browser.
Un file PAC proxy browser ben scritto instrada soltanto i domini necessari e lascia il resto del traffico su DIRECT.
Potrebbe interessarti anche:
- Reimpostare proxy WinHTTP Windows 11 con netsh
- Browser dedicato per l’home banking: il trucco semplice che riduce le truffe
- Gestire utenti Chromebook: profili e ospite sicuri
- App predefinite Android Chromebook: guida pratica
FAQ
Google Chrome e Microsoft Edge usano di norma la configurazione proxy del sistema operativo, mentre Mozilla Firefox può usare impostazioni indipendenti. Il supporto concreto può essere limitato dalle policy aziendali o dal sistema operativo.
In alcuni casi è possibile usare un indirizzo file:///, ma il comportamento dipende da browser e policy di sicurezza. Un URL HTTP o HTTPS raggiungibile dalla rete è generalmente più prevedibile.
Inserisci una regola che restituisce DIRECT prima delle regole più generiche, per esempio if (host == "example.com") return "DIRECT";. L’ordine delle condizioni determina quale regola viene applicata per prima.
Solo le richieste effettivamente inviate al proxy possono apparire con l’indirizzo IP del proxy. I domini per cui la funzione restituisce DIRECT usano normalmente la connessione diretta e non vengono instradati dal proxy.
Altri articoli di questa serie:
- Opera VPN gratuita configurazione: guida pratica
- Firefox VPN gratuita 50 GB: verifica e protezione
- VPN gratuita Microsoft Edge Secure Network: guida pratica
- Configurare proxy nel browser senza programmi
- VPN IKEv2 Windows 11 senza software: configurazione
- Configurare VPN IKEv2 macOS passo passo
- VPN IKEv2 iPhone senza app: configurazione gratuita
- VPN manuale Android senza applicazione: IKEv2 o L2TP
- Configurare VPN Samsung Galaxy: profilo e avvio automatico
- Proxy gratuito Android impostazioni Wi-Fi: guida pratica
- VPN gratuita configurata sul router: guida pratica
- Test perdita WebRTC VPN browser: verifica l’IP
- Come controllare perdita IPv6 con VPN gratuita
- Privacy browser con VPN gratuita: cosa ti identifica
- VPN gratuita Wi-Fi pubblico: sicurezza pratica
- Test velocità VPN gratuita dal browser: guida pratica
- VPN browser aggirare blocchi geografici: guida pratica
- VPN sempre attiva Android Windows: guida sicura
