Utilisation d'Axe DevTools Linter avec un Proxy

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

Comment configurer Axe DevTools Linter pour fonctionner avec des proxys HTTP

Free Trial
Not for use with personal data

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)
important

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
note

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.

important

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 lint

Ligne 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 lint

Utiliser 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 lint
tip

Mê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 :

  1. Le chemin NODE_EXTRA_CA_CERTS pointe vers un fichier de certificat valide
  2. Le certificat est au format PEM
  3. Le certificat correspond à l'autorité de certification de votre proxy

Connexion refusée

Si les connexions sont refusées :

  1. Vérifiez que le point de terminaison du proxy est correct et accessible.
  2. Assurez-vous que le proxy est en cours d'exécution et accepte les connexions.
  3. Confirmez que vous utilisez le bon protocole (HTTP vs HTTPS).

Proxy non utilisé

Si les requêtes ne passent pas par le proxy :

  1. Vérifiez que si AXE_LINTER_USE_ENV_PROXY est défini, il n'est pas réglé sur une valeur autre que 1.
  2. Assurez-vous que HTTPS_PROXY (ou HTTP_PROXY pour les installations sur site) est correctement configuré.
  3. Assurez-vous que l'hôte ou le domaine cible n'est pas listé dans NO_PROXY.

Voir aussi