منفذ الوكيل في cURL مقابل منفذ الوجهة
أبقِ منفذ خدمة HTTPS في عنوان URL للوجهة ومنفذ الوسيط في عنوان URL للوكيل، دون تجاوزهما عبر CURLOPT_PORT.
يمكن الوصول إلى خدمة HTTPS على المنفذ 8443 عبر وكيل HTTP على المنفذ 8080. هذه الأرقام تصف اتصالين مختلفين:
$handle = curl_init('https://api.example:8443/status');
curl_setopt($handle, CURLOPT_PROXY, 'http://proxy.example:8080');
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
لا يزال التطبيق يتولى التنفيذ ومعالجة الأخطاء ودورة حياة المقبض. تُبقي المقتطف معطيات التوجيه معًا دون تغيير التحقق من الشهادة.
يتصل cURL أولًا بـ proxy.example:8080. وبالنسبة إلى وجهة HTTPS هذه، يذكر طلب النفق api.example:8443، وتبقى هوية TLS هي api.example.
CURLOPT_PORT تجاوز لمنفذ الوجهة، وليس لمنفذ الوكيل. تعيينه إلى 443 كلما بدأ عنوان URL بـ https قد يتجاوز خدمة مستضافة عمدًا على 8443. توصي libcurl باختيار المنفذ في عنوان URL بدل استخدام ذلك الخيار.
عند إعادة استخدام مقبض، احسب أيضًا أي تجاوز صريح سابق للمنفذ. العنوان الجديد لا يجعل الخيارات المتناقضة المحتفظ بها أسهل في التفسير.
على الوسيط أن يسمح بـ طلب CONNECT إلى منفذ الوجهة المختار. رفض 8443 ليس سببًا لنقل مستمع الوكيل أو تعطيل التحقق من TLS.