全部产品
Search
文档中心

Alibaba Cloud SDK:Konfigurasikan proxy

更新时间:Jun 28, 2025

Topik ini menjelaskan cara mengonfigurasi proxy di SDK untuk PHP V1.0.

Catatan

Urutan prioritas metode untuk mengonfigurasi proxy adalah sebagai berikut: ajukan permintaan, gunakan klien, dan konfigurasikan variabel lingkungan.

  • Ajukan permintaan untuk mengonfigurasi proxy.

    <?php
    
    require_once 'vendor/autoload.php';
    
    use AlibabaCloud\Client\AlibabaCloud;
    use AlibabaCloud\Client\Exception\ClientException;
    use AlibabaCloud\Client\Exception\ServerException;
    use AlibabaCloud\Ecs\Ecs;
    
    try {
        // Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET dikonfigurasi. 
        AlibabaCloud::accessKeyClient(getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'), getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'));
        $request = Ecs::v20140526()->describeRegions();
        $result = $request
            ->version('2014-05-26')
            ->product('Ecs')
            ->action('DescribeRegions')
            ->regionId('cn-hangzhou')
            ->host("ecs.cn-hangzhou.aliyuncs.com")
            ->scheme("http") // Jika Anda menyetel parameter proxy ke https, atur parameter skema ke https. Jika Anda menyetel parameter proxy ke http atau tidak, atur skema ke http. Jika tidak, proxy tidak akan berlaku.
            ->options([
                'proxy' => [
                    'http'  => 'http://localhost:8080', // Gunakan proxy ini dengan "http"
    //                'https' => 'http://localhost:9124', // Gunakan proxy ini dengan "https",
    //                'no' => ['example.com']    // Jangan gunakan proxy dengan ini
                ]
            ])
            ->request();
        print_r($result->toArray());
    } catch (ClientException $exception) {
        // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, informasi ditampilkan hanya untuk referensi. 
        echo $exception->getMessage() . PHP_EOL;
    } catch (ServerException $exception) {
        // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, informasi ditampilkan hanya untuk referensi. 
        echo $exception->getMessage() . PHP_EOL;
        echo $exception->getErrorCode() . PHP_EOL;
        echo $exception->getRequestId() . PHP_EOL;
        echo $exception->getErrorMessage() . PHP_EOL;
    }
  • Gunakan klien untuk mengonfigurasi proxy.

    <?php
    
    require_once 'vendor/autoload.php';
    
    use AlibabaCloud\Client\AlibabaCloud;
    use AlibabaCloud\Client\Exception\ClientException;
    use AlibabaCloud\Client\Exception\ServerException;
    use AlibabaCloud\Ecs\Ecs;
    
    try {
        // Pastikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET dikonfigurasi. 
        AlibabaCloud::accessKeyClient(getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'), getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'))
            ->asDefaultClient()
            ->options([
                'proxy' => [
                    'http'  => 'http://localhost:8080', // Gunakan proxy ini dengan "http"
    //                'https' => 'http://localhost:9124', // Gunakan proxy ini dengan "https",
    //                'no' => ['localhost']    // Jangan gunakan proxy dengan ini
                ]
            ]);
        $request = Ecs::v20140526()->describeRegions();
        $result = $request
            ->version('2014-05-26')
            ->product('Ecs')
            ->action('DescribeRegions')
            ->regionId('cn-hangzhou')
            ->host("ecs.cn-hangzhou.aliyuncs.com")
            ->scheme("http") // Jika Anda menyetel parameter proxy ke https, atur parameter skema ke https. Jika Anda menyetel parameter proxy ke http atau tidak, atur skema ke http. Jika tidak, proxy tidak akan berlaku.
            ->request();
        print_r($result->toArray());
    } catch (ClientException $exception) {
        // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, informasi ditampilkan hanya untuk referensi. 
        echo $exception->getMessage() . PHP_EOL;
    } catch (ServerException $exception) {
        // Tangani pengecualian dengan hati-hati dalam skenario bisnis nyata dan jangan pernah abaikan pengecualian dalam proyek Anda. Dalam contoh ini, informasi ditampilkan hanya untuk referensi. 
        echo $exception->getMessage() . PHP_EOL;
        echo $exception->getErrorCode() . PHP_EOL;
        echo $exception->getRequestId() . PHP_EOL;
        echo $exception->getErrorMessage() . PHP_EOL;
    }
  • Konfigurasikan variabel lingkungan untuk mengatur proxy.

    • HTTP_PROXY atau http_proxy

    • HTTPS_PROXY atau https_proxy

    • NO_PROXY atau no_proxy