მანქანას, რომელსაც რამდენიმე ლოკალური მისამართი აქვს, შესაძლოა ერთ-ერთი დასჭირდეს გადამცემ პროქსისთან კავშირისთვის. cURL-ს შეუძლია ორივე არჩევანი ცხადად გააკეთოს:

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

ეს საჩვენებელი კონფიგურაციაა არსებული cURL სახელურისთვის. შეცვალეთ 192.0.2.20 იმ წყაროს მისამართით, რომელიც ნამდვილად ხელმისაწვდომია PHP-ის გამტარ მანქანაზე. პროქსის ანგარიშის გარეშე დაშვებული საჯარო მოთხოვნისთვის HTTP პროქსიების სიიდან შეიძლება მოწოდებულ იქნას დისტანციური მსმენელი პროქსის მნიშვნელობისთვის.

CURLOPT_INTERFACE ირჩევს გამავალი კავშირის ლოკალურ მხარეს. CURLOPT_PROXY ირჩევს შუამავალს, რომელიც მოთხოვნას წინ მიიტანს. ლოკალური წყაროს არჩევა მანქანას დისტანციურ პროქსიდ არ აქცევს და არ აძლევს თვითნებურ საჯარო IP-ს.

ამ გზაზე ლოკალური არჩევანი გავლენას ახდენს პროქსისკენ კავშირზე. ვებსაიტი ჩვეულებრივ ხედავს პროქსის მომდევნო წყაროს მისამართს. NAT-ს ორივე წყვილს შორის შეუძლია კიდევ უფრო თარგმნოს ის მისამართი, რომელსაც ყოველი მიმღები ხედავს.

თუ ინტერფეისის არჩევანი გამოტოვებულია, libcurl საშუალებას აძლევს TCP დასტას აირჩიოს შესაფერისი წყარო. ეს არჩევანი მიჰყვება მანქანის ქსელურ კონფიგურაციას; ეს არ არის საყოველთაო წესი, რომ კონფიგურაციის ფაილში პირველი მისამართი იმარჯვებს.

libcurl იღებს ინტერფეისების სახელებს მხარდაჭერილ პლატფორმებზე, მაგრამ მისი დოკუმენტაცია გამორიცხავს Windows-ის ინტერფეისის სახელების არჩევას ამ პარამეტრისთვის. ჰოსტის სახელის გამოყენებამ შეიძლება გამოიწვიოს ბლოკირებადი ძიება. ცნობილი ლოკალური მისამართი უფრო ნათელი შეყვანაა, როცა სწორედ ეს არჩევანია პროგრამის განზრახვა.

დაკავშირებული სტატიები