Utilisation d'Axe DevTools Linter avec un Proxy
Comment configurer Axe DevTools Linter pour fonctionner avec des proxys HTTP
Axe DevTools Linter prend en charge la configuration de proxy via des variables d'environnement, vous permettant de diriger les requêtes de linting à travers l'infrastructure proxy de votre organisation.
Exigences
Pour utiliser la prise en charge des proxys avec Axe DevTools Linter, vous avez besoin de :
- Un logiciel proxy s'exécutant localement ou sur les serveurs de votre organisation
- Le point d'accès de votre proxy
- Le certificat d'autorité (CA) du proxy (pour l'autoriser sur votre machine)
Lors de l'utilisation des serveurs SaaS hébergés par Deque, le HTTPS est le seul protocole pris en charge. Si vous hébergez vous-même une instance sur site, vous pouvez utiliser HTTP et aurez besoin du point d'accès HTTP de votre proxy. Le point d'accès HTTP est généralement sur le même hôte que le point d'accès HTTPS, mais sur le port 80 plutôt que 443 ; vérifiez cela avec votre administrateur réseau.
Variables d'environnement
La configuration du proxy pour Axe DevTools Linter est entièrement gérée via des variables d'environnement, qui se répartissent en deux catégories.
Variables d'environnement standard pour les proxys
| Variable | Description |
|---|---|
HTTPS_PROXY |
Le point d'accès utilisé pour les requêtes du protocole HTTPS |
HTTP_PROXY |
Le point d'accès utilisé pour les requêtes du protocole HTTP |
NO_PROXY |
Une liste de noms d'hôte séparés par des virgules qui doivent contourner le proxy |
Variables d'environnement Axe DevTools Linter et Node.js
| Variable | Description |
|---|---|
AXE_LINTER_USE_ENV_PROXY |
Active la prise en charge des proxys spécifiquement pour Axe DevTools Linter |
AXE_USE_ENV_PROXY |
Active la prise en charge des proxys pour tous les outils Deque qui prennent en charge cette variable |
NODE_USE_ENV_PROXY |
Prise en charge native du proxy par Node.js (version 24 ou ultérieure uniquement) |
NODE_EXTRA_CA_CERTS |
Chemin vers les certificats CA de confiance pour les connexions HTTPS |
La variable NODE_USE_ENV_PROXY a été introduite dans la version 24 de Node.js pour activer la prise en charge du proxy de manière globale pour un processus. Axe DevTools Linter a rétroporté la prise en charge de cette variable pour fonctionner sur toutes les versions de Node.js.
Activer la prise en charge du proxy
Pour activer le support du proxy, définissez l'une des variables AXE_* sur 1. Pour désactiver le support du proxy pour Axe DevTools Linter tout en le maintenant activé pour Node.js, définissez soit AXE_LINTER_USE_ENV_PROXY soit AXE_USE_ENV_PROXY sur 0.
Seules les valeurs 1 (activé) et 0 (désactivé) sont reconnues. Toute autre valeur désactivera le support du proxy.
Pour les connexions HTTPS, vous devez spécifier le chemin vers le certificat d'autorité (CA) de votre proxy en utilisant NODE_EXTRA_CA_CERTS. Sans cela, les connexions seront rejetées comme non fiables.
Exemples de configuration
Vous pouvez définir des variables d'environnement de deux manières : globalement pour une machine ou un travail CI, ou en ligne pour une seule commande.
Workflow GitHub Actions
L'exemple suivant montre comment configurer les variables d'environnement proxy dans un workflow 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 lintLigne de commande locale
Pour définir des variables proxy pour une commande unique sur Linux ou macOS :
AXE_LINTER_USE_ENV_PROXY=1 HTTPS_PROXY=https://localhost:9090 NODE_EXTRA_CA_CERTS=/path/to/ca.pem npm run lintUtiliser Axe DevTools Linter Connector avec un Proxy
Lors de l'utilisation de Axe DevTools Linter Connector, configurez les variables de proxy avant d'exécuter le connecteur :
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/Contourner le Proxy pour des Hôtes Spécifiques
Utilisez la variable d'environnement NO_PROXY pour spécifier les hôtes ou domaines de destination qui ne doivent pas être proxifiés. Cela est utile lorsque certains domaines nécessitent un accès direct.
NO_PROXY=internal.example.com,localhost axe-linter-connector -s . -d .Node.js 24 et versions ultérieures
Dans Node.js version 24 et ultérieures, NODE_USE_ENV_PROXY est activé par défaut pour toutes les requêtes. Si vous devez contourner le proxy pour Axe DevTools Linter tout en le gardant activé pour d'autres requêtes, utilisez la variable NO_PROXY :
NODE_USE_ENV_PROXY=1 HTTPS_PROXY=https://our.intranet/proxy NO_PROXY=axe.deque.com,axe-linter.deque.com npm run lintMême si vous définissez AXE_LINTER_USE_ENV_PROXY=0, la version 24 ou ultérieure de Node.js acheminera toujours les requêtes via le proxy en raison du répartiteur de requêtes global. Utilisez NO_PROXY pour contourner le proxy pour des domaines spécifiques.
Dépannage
Erreurs de certificat
Si vous recevez des erreurs liées aux certificats, assurez-vous que :
- Le chemin
NODE_EXTRA_CA_CERTSpointe vers un fichier de certificat valide - Le certificat est au format PEM
- Le certificat correspond à l'autorité de certification de votre proxy
Connexion refusée
Si les connexions sont refusées :
- Vérifiez que le point de terminaison du proxy est correct et accessible.
- Assurez-vous que le proxy est en cours d'exécution et accepte les connexions.
- Confirmez que vous utilisez le bon protocole (HTTP vs HTTPS).
Proxy non utilisé
Si les requêtes ne passent pas par le proxy :
- Vérifiez que si
AXE_LINTER_USE_ENV_PROXYest défini, il n'est pas réglé sur une valeur autre que1. - Assurez-vous que
HTTPS_PROXY(ouHTTP_PROXYpour les installations sur site) est correctement configuré. - Assurez-vous que l'hôte ou le domaine cible n'est pas listé dans
NO_PROXY.
Voir aussi
- Utilisation du connecteur Axe DevTools Linter pour les options de lintage en ligne de commande
- Configuration du serveur sur site pour les installations auto-hébergées
- Utiliser Axe DevTools Linter avec un proxy inverse pour sécuriser votre serveur sur site
