Alibaba Cloudは、EdgeScriptコマンドラインインターフェイス (CLI) を提供しています。 EdgeScript CLIを使用すると、オンプレミスで作成されたスクリプトをステージング環境と本番環境に公開できます。 EdgeScript CLIを使用して、ステージング環境と運用環境でスクリプトを照会、変更、削除できます。 このトピックでは、EdgeScript CLIの使用方法について説明します。

  1. EdgeScript CLIをダウンロードします。
  2. AccessKey IDとAccessKey secretを設定します。
    python。/es.py config -- id=AK_ID -- secret=AK_SECRET
    cat aliyun.ini
    [資格情報]
    accesskeyid=更新されたAccessKey ID
    accesskeysecret=更新されたAccessKey secret
  3. スクリプトをステージングまたは運用環境に公開します。
    . /es.py action=push_test_env domain=<domain> rule='{"pos":"<head | foot>","pri":"0-999","rule_path":"<the es code path>","enable":"<on | off>"}'
    . /es.py action=push_product_env domain=<domain> rule='{"pos":"<head | foot>","pri":"0-999","rule_path":"<the es code path>","enable":"<on | off>","configid":"<configid>"}'                    

    次の表に、スクリプトのフィールドを示します。

    フィールド必須/任意説明
    enableスクリプトを有効にするか無効にするかを指定します。 有効な値:
    • on
    • オフ
    posスクリプトが実行される位置。 有効な値:
    • ヘッド
    プリスクリプトの優先度。 優先順位は、同じ位置で実行されるスクリプトのみに設定できます。 有効値: 0 ~ 999
    • 値0は、最も高い優先度を示す。
    • 値999は、最も低い優先度を示す。
    ルールTheスクリプトの内容。
    brk現在のスクリプトが実行されている場合、後続のスクリプトをスキップするかどうかを指定します。 有効な値:
    • オフ
    testipクライアントの IP アドレス。 デフォルトでは、このフィールドは空です。 クライアントIPアドレスを指定した場合、指定したIPアドレスから送信されたリクエストのみがスクリプトの実行をトリガーできます。
    オプションエクステンション。 EdgeScriptは拡張機能をサポートしています。 このフィールドを _es_dbg=signatureに設定すると、レスポンスヘッダーのデバッグを実行できます。
    説明
    • スクリプトを作成するときに、構成IDを指定する必要はありません。
    • スクリプトを変更するには、構成IDを指定する必要があります。 クエリ操作を呼び出して、スクリプトの構成IDを取得できます。
    • 複数のスクリプトを指定できます。
  4. ステージング環境または運用環境でスクリプトを照会します。
    . /es.pyアクション=query_test_envドメイン=<ドメイン>
    . /es.pyアクション=query_product_envドメイン=<ドメイン>
  5. ステージング環境または運用環境からスクリプトを削除します。
    . /es.py action=del_test_env domain=<domain> configid=<configid>
    . /es.py action=del_product_env domain=<domain> configid=<configid>                  
  6. ステージング環境から本番環境にスクリプトを公開するか、本番環境からステージング環境にスクリプトをロールバックします。
    . /es.pyアクション=publish_test_envドメイン=<ドメイン>
    . /es.pyアクション=rollback_test_envドメイン=<ドメイン>

たとえば、すべてのm3u8リクエストをブロックするために使用されるM3U8. esスクリプトを作成、保存、テスト、および公開できます。 詳細については、「ES CLIを使用してスクリプトを管理する方法の例」をご参照ください。

リクエストヘッダーのデバッグ

  1. デバッグを実行します。
    デバッグを実行するには、WebIDEをサポートするApsaraVideo Liveコンソールで _es_dbgパラメーターを設定するか、次のコマンドを実行します。
    . /es.py action=push_test_env domain=<domain> rule='{"pos":"<head | foot>" 、"pri":"0-999" 、"rule_path":"<the es code path>" 、"enable":"<on | off>" 、"configid":"<configid>" 、"オプション" "_es_dbg=123"}'
  2. デバッグ結果を確認します。

    _es_dbgパラメーターはリクエストヘッダーに含まれています。 _es_dbgパラメーターの値は、スクリプトのオプション拡張で設定した _es_dbgの値に設定されます。 デバッグ结果を确认するには, レスポンスヘッダーに含まれる次の情报を确认してください。

    TRACE情報: X-DEBUG-ES-TRACE-RULE-{スクリプトID} スクリプトの制御フローを確認してください。 制御フローの形式は、_flow number_function name (input parameter): Response{_execution time} です。