Usando o Axe DevTools Linter com um Proxy
Como configurar o Axe DevTools Linter para trabalhar com proxies HTTP
O Axe DevTools Linter suporta a configuração de proxy através de variáveis de ambiente, permitindo que você encaminhe solicitações de linting pela infraestrutura de proxy da sua organização.
Requisitos
Para usar o suporte a proxy com o Axe DevTools Linter, você precisa de:
- Software de proxy em execução localmente ou nos servidores da sua organização
- O endpoint do seu proxy
- O certificado da autoridade (CA) do proxy (para autorizá-lo em sua máquina)
Ao usar os servidores SaaS hospedados pela Deque, o HTTPS é o único protocolo suportado. Se estiver hospedando localmente uma instância on-premises, você pode usar HTTP e precisará do endpoint HTTP do seu proxy. O endpoint HTTP geralmente está no mesmo host que o endpoint HTTPS, mas na porta 80 em vez de 443; verifique isso com seu administrador de rede.
Variáveis de Ambiente
A configuração de proxy para o Axe DevTools Linter é gerenciada inteiramente através de variáveis de ambiente, que se dividem em duas categorias.
Variáveis de Ambiente de Proxy Padrão
| Variável | Descrição |
|---|---|
HTTPS_PROXY |
O endpoint utilizado para requisições de protocolo HTTPS |
HTTP_PROXY |
O endpoint utilizado para requisições de protocolo HTTP |
NO_PROXY |
Uma lista de nomes de host separados por vírgulas que devem ignorar o proxy |
Axe DevTools Linter e Variáveis de Ambiente Node.js
| Variável | Descrição |
|---|---|
AXE_LINTER_USE_ENV_PROXY |
Habilita o suporte a proxy especificamente para o Axe DevTools Linter |
AXE_USE_ENV_PROXY |
Habilita o suporte a proxy para todas as ferramentas Deque que suportam esta variável |
NODE_USE_ENV_PROXY |
Suporte nativo a proxy no Node.js (somente na versão 24 ou superior) |
NODE_EXTRA_CA_CERTS |
Caminho para certificados CA confiáveis para conexões HTTPS |
A variável NODE_USE_ENV_PROXY foi introduzida na versão 24 do Node.js para habilitar o suporte a proxy globalmente para um processo. O Axe DevTools Linter adaptou o suporte para esta variável para funcionar em todas as versões do Node.js.
Habilitando o Suporte a Proxy
Para habilitar o suporte a proxy, defina qualquer uma das variáveis AXE_* para 1. Para desabilitar o suporte a proxy para o Axe DevTools Linter enquanto mantém habilitado para o Node.js, defina ou AXE_LINTER_USE_ENV_PROXY ou AXE_USE_ENV_PROXY para 0.
Somente os valores 1 (habilitado) e 0 (desabilitado) são reconhecidos. Qualquer outro valor desabilitará o suporte a proxy.
Para conexões HTTPS, você deve especificar o caminho para o certificado da autoridade (CA) do seu proxy usando NODE_EXTRA_CA_CERTS. Sem isso, as conexões serão rejeitadas como não confiáveis.
Exemplos de Configuração
Você pode definir variáveis de ambiente de duas maneiras: globalmente para uma máquina ou uma tarefa CI, ou inline para um único comando.
Workflow do GitHub Actions
O exemplo a seguir mostra como configurar variáveis de ambiente de proxy em um workflow do 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 lintLinha de Comando Local
Para definir variáveis de proxy para um único comando no Linux ou macOS:
AXE_LINTER_USE_ENV_PROXY=1 HTTPS_PROXY=https://localhost:9090 NODE_EXTRA_CA_CERTS=/path/to/ca.pem npm run lintUsando o Axe DevTools Linter Connector com um Proxy
Ao usar o Axe DevTools Linter Connector, configure as variáveis de proxy antes de executar o conector:
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/Ignorando o Proxy para Hosts Específicos
Use a variável NO_PROXY variável de ambiente para especificar hosts de destino ou domínios que não devem ser proxy. Isso é útil quando certos domínios precisam de acesso direto.
NO_PROXY=internal.example.com,localhost axe-linter-connector -s . -d .Node.js 24 e Posteriores
Na versão 24 do Node.js e posteriores, NODE_USE_ENV_PROXY está habilitado por padrão para todas as solicitações. Se você precisar ignorar o proxy para o Axe DevTools Linter enquanto o mantém habilitado para outras solicitações, use a NO_PROXY variável:
NODE_USE_ENV_PROXY=1 HTTPS_PROXY=https://our.intranet/proxy NO_PROXY=axe.deque.com,axe-linter.deque.com npm run lintMesmo se você definir AXE_LINTER_USE_ENV_PROXY=0, a versão 24 ou posterior do Node.js ainda roteará solicitações através do proxy devido ao despachante global de solicitações. Use NO_PROXY para ignorar o proxy para domínios específicos.
Resolução de Problemas
Erros de Certificado
Se você receber erros relacionados a certificados, certifique-se de que:
- O caminho
NODE_EXTRA_CA_CERTSaponta para um arquivo de certificado válido - O certificado está em formato PEM
- O certificado corresponde à CA do seu proxy
Conexão Recusada
Se as conexões forem recusadas:
- Verifique se o endpoint do proxy está correto e acessível.
- Verifique se o proxy está em execução e aceitando conexões.
- Confirme se você está usando o protocolo correto (HTTP vs HTTPS).
Proxy Não Está Sendo Usado
Se as solicitações não estão passando pelo proxy:
- Verifique se
AXE_LINTER_USE_ENV_PROXYestá definido, e não para um valor diferente de1. - Verifique se
HTTPS_PROXY(ouHTTP_PROXYpara instalações locais) está configurado corretamente. - Certifique-se de que o host ou domínio de destino não está listado em
NO_PROXY.
Consulte Também
- Usando o Conector do Axe DevTools Linter para opções de linting na linha de comando
- Configurando o Servidor Local para instalações auto-hospedadas
- Usando Axe DevTools Linter com um Proxy Reverso para proteger seu servidor local
