Mesin dengan beberapa alamat setempat mungkin memerlukan salah satunya untuk sambungannya ke proksi hadapan. cURL boleh membuat kedua-dua pilihan secara eksplisit:

curl_setopt_array($handle, [
    CURLOPT_URL => 'https://example.com/',
    CURLOPT_INTERFACE => '192.0.2.20',
    CURLOPT_PROXY => 'http://proxy.example:8080',
]);

Ini ialah konfigurasi ilustrasi untuk handle cURL sedia ada. Gantikan 192.0.2.20 dengan alamat sumber yang benar-benar tersedia pada mesin yang menjalankan PHP. Untuk permintaan awam yang dibenarkan tanpa akaun proksi, senarai proksi HTTP boleh membekalkan pendengar jauh untuk nilai proksi.

CURLOPT_INTERFACE memilih bahagian setempat bagi sambungan keluar. CURLOPT_PROXY memilih perantara yang membawa permintaan itu ke hadapan. Memilih sumber setempat tidak menjadikan mesin itu proksi jauh atau memberinya IP awam sewenang-wenangnya.

Pada laluan ini, pilihan setempat mempengaruhi sambungan ke arah proksi. Laman web biasanya melihat alamat sumber selanjutnya proksi. NAT antara mana-mana pasangan boleh menterjemah lagi alamat yang dilihat oleh setiap penerima.

Jika pilihan antara muka ditinggalkan, libcurl membenarkan tindanan TCP memilih sumber yang sesuai. Pilihan itu mengikut konfigurasi rangkaian mesin; ia bukan peraturan sejagat bahawa alamat pertama dalam fail konfigurasi menang.

libcurl menerima nama antara muka pada platform yang disokong, tetapi dokumentasinya mengecualikan pemilihan nama antara muka Windows untuk pilihan ini. Menggunakan hostname juga boleh mencetuskan carian yang menyekat. Alamat setempat yang diketahui ialah input yang lebih jelas apabila itulah pilihan yang dimaksudkan oleh aplikasi.

Artikel berkaitan