ເມື່ອເລືອກ handler ຂອງ Guzzle client ຢ່າງຕັ້ງໃຈ, stack ທີ່ອີງໃສ່ cURL ສາມາດໃຊ້ SOCKS ໄດ້:

$stack = \GuzzleHttp\HandlerStack::create(
    new \GuzzleHttp\Handler\CurlHandler()
);

$client = new \GuzzleHttp\Client([
    'handler' => $stack,
    'proxy' => 'socks5h://proxy.example.net:1080',
]);

socks5h ຂໍໃຫ້ proxy ແກ້ໄຂຊື່ປາຍທາງ. Guzzle ສົ່ງ endpoint ໄປຫາ libcurl ດັ່ງນັ້ນ build ຂອງ libcurl ທີ່ໂຫຼດຕ້ອງຮອງຮັບໂປຣໂຕຄອນນັ້ນ. ລາຍຊື່ proxy SOCKS5 ໃຫ້ຜູ້ສະໝັກ endpoint ສາທາລະນະສຳລັບ proxy URL ຂອງ client.

ຖ້າແອັບພລິເຄຊັນມີ handler stack ຢູ່ແລ້ວ, ກວດ transport ທີ່ຢູ່ໃຕ້ມັນກ່ອນຈະປ່ຽນ ແລະ ເສຍ middleware. Handler ທີ່ຈຳກັດພຽງ PHP HTTP stream ບໍ່ສາມາດປະຕິບັດ SOCKS ພຽງເພາະ client ໄດ້ຮັບຕົວເລືອກນີ້.

ກວດກາຂະບວນການທີ່ເຮັດຄຳຮ້ອງຂໍ. CLI PHP ແລະ PHP-FPM ສາມາດໂຫຼດໄຟລ໌ຕັ້ງຄ່າ ແລະ ສ່ວນຂະຫຍາຍຕ່າງກັນ; ການມີ cURL ໃນອັນໜຶ່ງບໍ່ໄດ້ພິສູດວ່າມີໃນອັນອື່ນ.

ບົດຄວາມທີ່ກ່ຽວຂ້ອງ