SOCKS प्रॉक्सीसाठी Guzzle चा cURL हँडलर निवडणे
केवळ HTTP स्ट्रीमना समर्थन देणारा हँडलर प्रॉक्सी URL वरून SOCKS वाटाघाटी मिळवू शकत नाही; प्रत्यक्ष PHP रनटाइममध्ये समर्थक ट्रान्सपोर्ट निवडा.
Guzzle क्लायंटचा हँडलर जाणूनबुजून निवडताना, cURL आधारित स्टॅक SOCKS वापरू शकतो:
$stack = \GuzzleHttp\HandlerStack::create(
new \GuzzleHttp\Handler\CurlHandler()
);
$client = new \GuzzleHttp\Client([
'handler' => $stack,
'proxy' => 'socks5h://proxy.example.net:1080',
]);socks5h प्रॉक्सीला गंतव्य नाव सोडवण्यास सांगतो. Guzzle एंडपॉइंट libcurl ला देतो, म्हणून लोड केलेल्या libcurl बिल्डने तो प्रोटोकॉल समर्थित करणे आवश्यक आहे. SOCKS5 प्रॉक्सी यादी क्लायंट प्रॉक्सी URL साठी सार्वजनिक एंडपॉइंट उमेदवार पुरवते.
अॅप्लिकेशनकडे आधीच हँडलर स्टॅक असल्यास, तो बदलून मिडलवेअर गमावण्यापूर्वी त्याखालील ट्रान्सपोर्ट तपासा. केवळ PHP HTTP स्ट्रीमपुरता मर्यादित हँडलर केवळ क्लायंटला हा पर्याय मिळतो म्हणून SOCKS लागू करू शकत नाही.
विनंती करणारी प्रक्रिया तपासा. CLI PHP आणि PHP-FPM भिन्न कॉन्फिगरेशन फाइल्स आणि एक्स्टेंशन्स लोड करू शकतात; एकामध्ये cURL असणे दुसऱ्यामध्ये ते उपलब्ध असल्याचे सिद्ध करत नाही.