Aynı cURL Aktarımında Yerel Arayüz ve Proxy Seçme
Yerel kaynak için CURLOPT_INTERFACE ve aracı için CURLOPT_PROXY kullanın; işletim sistemi yönlendirmesini ve NAT'ı hesaba katın.
Birden fazla yerel adrese sahip bir makine, bir yönlendirici proxy'ye olan bağlantısı için bunlardan birine ihtiyaç duyabilir. cURL her iki seçimi de açıkça yapabilir:
curl_setopt_array($handle, [
CURLOPT_URL => 'https://example.com/',
CURLOPT_INTERFACE => '192.0.2.20',
CURLOPT_PROXY => 'http://proxy.example:8080',
]);
Bu, mevcut bir cURL tanıtıcısı için örnek bir yapılandırmadır. 192.0.2.20'yi PHP çalıştıran makinede gerçekten bulunan bir kaynak adresle değiştirin. Proxy hesabı olmadan izin verilen bir genel istek için HTTP proxy listesi proxy değeri için uzak dinleyiciyi sağlayabilir.
CURLOPT_INTERFACE giden bağlantının yerel tarafını seçer. CURLOPT_PROXY isteği ileriye taşıyan aracıyı seçer. Yerel bir kaynak seçmek o makineyi uzak bir proxy'ye dönüştürmez ve ona keyfi bir genel IP vermez.
Bu yolda yerel seçim, proxy'ye doğru olan bağlantıyı etkiler. Web sitesi genellikle proxy'nin bir sonraki kaynak adresini görür. Herhangi bir çift arasındaki NAT, her alıcının gördüğü adresi daha da çevirebilir.
Arayüz seçimi atlanırsa libcurl, uygun bir kaynağı seçmesi için TCP yığınına izin verir. Bu seçim makinenin ağ yapılandırmasını izler; yapılandırma dosyasındaki ilk adresin kazanması evrensel bir kural değildir.
libcurl desteklenen platformlarda arayüz adlarını kabul eder, ancak belgeleri bu seçenek için Windows arayüz adı seçimini dışlar. Bir hostname kullanmak da engelleyici bir aramayı tetikleyebilir. Uygulamanın amaçladığı seçim buysa bilinen bir yerel adres daha net bir girdidir.