Axe DevTools Linterをプロキシで使用する

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

Axe DevTools LinterをHTTPプロキシで動作させる方法

Free Trial
Not for use with personal data

Axe DevTools Linterは環境変数を通じてプロキシ設定をサポートし、リントリクエストを組織のプロキシインフラを通してルーティングできるようにします。

要件

Axe DevTools Linterでプロキシサポートを使用するために必要なもの:

  • ローカルまたは組織のサーバー上で稼働しているプロキシソフトウェア
  • プロキシのエンドポイント
  • プロキシの証明書機関(CA)証明書(マシンで承認するため)
important

DequeがホストするSaaSサーバーを使用する場合、HTTPSが唯一サポートされるプロトコルです。オンプレミスインスタンスをセルフホスティングする場合、HTTPを使用でき、プロキシのHTTPエンドポイントを必要とします。HTTPエンドポイントは通常、HTTPSエンドポイントと同じホスト上にありますが、ポートは80であり、443ではありません。これについてはネットワーク管理者に確認してください。

環境変数

Axe DevTools Linterのプロキシ設定はすべて環境変数を通じて処理され、2つのカテゴリに分かれます。

標準プロキシ環境変数

変数 説明
HTTPS_PROXY HTTPSプロトコルリクエストに使用されるエンドポイント
HTTP_PROXY HTTPプロトコルリクエストに使用されるエンドポイント
NO_PROXY プロキシをバイパスすべきホスト名のカンマ区切りリスト

Axe DevTools LinterとNode.jsの環境変数

変数 説明
AXE_LINTER_USE_ENV_PROXY Axe DevTools Linter専用のプロキシサポートを有効にする
AXE_USE_ENV_PROXY この変数をサポートするすべてのDequeツールに対するプロキシサポートを有効にする
NODE_USE_ENV_PROXY Node.jsネイティブプロキシサポート(バージョン24以降のみ)
NODE_EXTRA_CA_CERTS HTTPS接続用の信頼されたCA証明書へのパス
note

変数はNode.jsバージョン24で導入され、プロセス全体に対するプロキシサポートをグローバルに有効にします。Axe DevTools Linterは、すべてのNode.jsバージョンでこの変数が機能するようにバックポートによるサポートを実装しました。 NODE_USE_ENV_PROXY variable was introduced in Node.js version 24 to enable proxy support globally for a process. Axe DevTools Linter has back-ported support for this variable to work across all Node.js versions.

プロキシサポートの有効化

プロキシサポートを有効にするには、 AXE_* のいずれかの変数を設定します。 1Axe DevTools Linterのプロキシサポートを無効にし、Node.jsのプロキシサポートを維持するには、 AXE_LINTER_USE_ENV_PROXY または AXE_USE_ENV_PROXY を設定します。 0

important

認識されるのは値 1 (有効)と 0 (無効)のみです。他の値を設定するとプロキシサポートは無効になります。

HTTPS接続の場合、プロキシの証明書機関(CA)証明書へのパスを NODE_EXTRA_CA_CERTSで指定する必要があります。これがないと、接続は信頼されていないものとして拒否されます。

設定例

環境変数は、マシン全体やCIジョブに対してグローバルに設定するか、または単一のコマンドに対してインラインで設定することができます。

GitHub Actionsワークフロー

次の例は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

ローカルコマンドライン

LinuxまたはmacOSで単一のコマンドに対してプロキシ変数を設定するには:

AXE_LINTER_USE_ENV_PROXY=1 HTTPS_PROXY=https://localhost:9090 NODE_EXTRA_CA_CERTS=/path/to/ca.pem npm run lint

Axe DevTools Linter Connectorをプロキシで使用する

Axe DevTools Linter Connectorを使用する際は、コネクタを実行する前にプロキシ変数を設定します:

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/

特定ホストのプロキシバイパス

を使用します NO_PROXY 環境変数を使用して、プロキシを使用しない宛先ホストまたはドメインを指定します。これは、特定のドメインに直接アクセスする必要がある場合に便利です。

NO_PROXY=internal.example.com,localhost axe-linter-connector -s . -d .

Node.js 24以降

Node.jsバージョン24以降では、 NODE_USE_ENV_PROXY はすべてのリクエストに対してデフォルトで有効化されています。他のリクエストにはプロキシを有効にしたまま、Axe DevTools Linterをプロキシから外す必要がある場合は、 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

を設定しても、 AXE_LINTER_USE_ENV_PROXY=0、Node.jsバージョン24以降では、グローバルリクエストディスパッチャーのため、リクエストは依然としてプロキシ経由で転送されます。 NO_PROXY を使用して特定のドメインのプロキシを迂回してください。

トラブルシューティング

証明書エラー

証明書関連のエラーが発生した場合は、次を確認してください。

  1. NODE_EXTRA_CA_CERTS パスが有効な証明書ファイルを指していること
  2. 証明書がPEM形式であること
  3. 証明書がプロキシのCAに一致していること

接続拒否

接続が拒否される場合は:

  1. プロキシエンドポイントが正しく、アクセス可能であることを確認してください。
  2. プロキシが稼働中であり、接続を受け入れる状態にあることを確認してください。
  3. 正しいプロトコル(HTTPまたはHTTPS)を使用していることを確認してください。

プロキシが使用されていない

リクエストがプロキシを経由していない場合:

  1. が設定されている場合、 AXE_LINTER_USE_ENV_PROXY に設定されていないことを確認してください。 1
  2. また、 HTTPS_PROXY (またはオンプレミスの場合は HTTP_PROXY )が正しく設定されていることを確認してください。
  3. ターゲットホストまたはドメインが NO_PROXYにリストされていないことを確認してください。

関連情報