Uso di Axe DevTools Linter con un Proxy
Come configurare Axe DevTools Linter per funzionare con proxy HTTP
Axe DevTools Linter supporta la configurazione del proxy tramite variabili d'ambiente, permettendo di instradare le richieste di linting attraverso l'infrastruttura proxy della tua organizzazione.
Requisiti
Per utilizzare il supporto proxy con Axe DevTools Linter, è necessario:
- Software proxy in esecuzione localmente o sui server della tua organizzazione
- L'endpoint del tuo proxy
- Il certificato dell'autorità di certificazione (CA) del proxy (per autorizzarlo sulla tua macchina)
Nel caso si utilizzino server SaaS ospitati da Deque, il protocollo supportato è solo HTTPS. Se si esegue un'istanza locale on-premises, si può utilizzare HTTP e sarà necessario l'endpoint HTTP del proxy. L'endpoint HTTP è tipicamente sullo stesso host dell'endpoint HTTPS, ma sulla porta 80 anziché 443; verifica questo con il tuo amministratore di rete.
Variabili d'Ambiente
La configurazione del proxy per Axe DevTools Linter è gestita interamente attraverso variabili d'ambiente, che si dividono in due categorie.
Variabili d'Ambiente Standard del Proxy
| Variabile | Descrizione |
|---|---|
HTTPS_PROXY |
L'endpoint utilizzato per le richieste con protocollo HTTPS |
HTTP_PROXY |
L'endpoint utilizzato per le richieste con protocollo HTTP |
NO_PROXY |
Un elenco di nomi host separati da virgola che dovrebbero bypassare il proxy |
Variabili d'Ambiente di Axe DevTools Linter e Node.js
| Variabile | Descrizione |
|---|---|
AXE_LINTER_USE_ENV_PROXY |
Abilita il supporto proxy specificamente per Axe DevTools Linter |
AXE_USE_ENV_PROXY |
Abilita il supporto proxy per tutti gli strumenti Deque che supportano questa variabile |
NODE_USE_ENV_PROXY |
Supporto proxy nativo di Node.js (solo dalla versione 24 o successiva) |
NODE_EXTRA_CA_CERTS |
Percorso ai certificati CA di fiducia per le connessioni HTTPS |
La variabile NODE_USE_ENV_PROXY è stata introdotta nella versione 24 di Node.js per abilitare il supporto proxy a livello globale per un processo. Axe DevTools Linter ha retroportato il supporto per questa variabile per funzionare con tutte le versioni di Node.js.
Abilitare il Supporto Proxy
Per abilitare il supporto proxy, impostare una qualsiasi delle variabili AXE_* su 1. Per disabilitare il supporto proxy per Axe DevTools Linter mantenendolo abilitato per Node.js, impostare o AXE_LINTER_USE_ENV_PROXY oppure AXE_USE_ENV_PROXY su 0.
Solo i valori 1 (abilitato) e 0 (disabilitato) sono riconosciuti. Qualsiasi altro valore disabiliterà il supporto proxy.
Per le connessioni HTTPS, è necessario specificare il percorso al certificato dell'autorità di certificazione (CA) del proxy utilizzando NODE_EXTRA_CA_CERTS. Senza di questo, le connessioni verranno rifiutate come non fidate.
Esempi di Configurazione
È possibile impostare le variabili d'ambiente in due modi: globalmente per una macchina o un lavoro CI, oppure in linea per un singolo comando.
Flusso di lavoro di GitHub Actions
Il seguente esempio mostra come configurare le variabili d'ambiente del proxy in un flusso di lavoro di GitHub Actions:
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run Axe DevTools Linter
env:
HTTPS_PROXY: https://localhost:9090
NODE_EXTRA_CA_CERTS: /path/to/ca.pem
AXE_LINTER_USE_ENV_PROXY: 1
run: npm run lintLinea di Comando Locale
Per impostare le variabili del proxy per un singolo comando su Linux o macOS:
AXE_LINTER_USE_ENV_PROXY=1 HTTPS_PROXY=https://localhost:9090 NODE_EXTRA_CA_CERTS=/path/to/ca.pem npm run lintUso del Connettore Axe DevTools Linter con un Proxy
Quando si utilizza il Connettore Axe DevTools Linter, configurare le variabili del proxy prima di eseguire il connettore:
export HTTPS_PROXY=https://proxy.example.com:9090
export NODE_EXTRA_CA_CERTS=/path/to/ca.pem
export AXE_LINTER_USE_ENV_PROXY=1
axe-linter-connector -s . -d . --api-key YOUR_API_KEY --url https://axe-linter.deque.com/Bypassare il Proxy per Host Specifici
Utilizzare la variabile d'ambiente NO_PROXY per specificare host o domini di destinazione che non devono essere proxy. Questo è utile quando certi domini necessitano di accesso diretto.
NO_PROXY=internal.example.com,localhost axe-linter-connector -s . -d .Node.js 24 e Successivi
Nella versione 24 di Node.js e successive, NODE_USE_ENV_PROXY è abilitato per impostazione predefinita per tutte le richieste. Se hai bisogno di bypassare il proxy per Axe DevTools Linter mantenendolo abilitato per altre richieste, utilizza la variabile NO_PROXY:
NODE_USE_ENV_PROXY=1 HTTPS_PROXY=https://our.intranet/proxy NO_PROXY=axe.deque.com,axe-linter.deque.com npm run lintAnche se si imposta AXE_LINTER_USE_ENV_PROXY=0, la versione 24 di Node.js o successiva instraderà comunque le richieste attraverso il proxy a causa del dispatcher di richieste globale. Utilizza NO_PROXY per bypassare il proxy per domini specifici.
Risoluzione dei Problemi
Errori di Certificato
Se ricevi errori relativi ai certificati, assicurati che:
- Il percorso
NODE_EXTRA_CA_CERTSpunti a un file di certificato valido - Il certificato sia in formato PEM
- Il certificato corrisponda all'autorità di certificazione del tuo proxy
Connessione Rifiutata
Se le connessioni vengono rifiutate:
- Verifica che l'endpoint del proxy sia corretto e accessibile.
- Controlla che il proxy sia in esecuzione e accetti connessioni.
- Conferma di usare il protocollo corretto (HTTP vs HTTPS).
Proxy non utilizzato
Se le richieste non vengono instradate attraverso il proxy:
- Verifica che, se
AXE_LINTER_USE_ENV_PROXYè impostato, non sia impostato su un valore diverso da1. - Controlla che
HTTPS_PROXY(oHTTP_PROXYper installazioni locali) sia impostato correttamente. - Assicurati che l'host o il dominio di destinazione non sia elencato in
NO_PROXY.
Vedi anche
- Utilizzo del connettore Axe DevTools Linter per opzioni di linting da linea di comando
- Configurazione del server locale per installazioni self-hosted
- Uso di Axe DevTools Linter con un reverse proxy per proteggere il tuo server locale
