تهيئة PHP cURL لـ IMAPS عبر SOCKS
اضبط مسار IMAPS على مقبض PHP cURL تدعم مكتبة libcurl المرتبطة به IMAP، مع حسابات بريد ووكيل منفصلة.
$handle = curl_init('imaps://mail.example.com/INBOX/;UID=1');
curl_setopt_array($handle, [
CURLOPT_PROXY => 'socks5h://203.0.113.10:1080',
CURLOPT_USERNAME => getenv('MAIL_USER'),
CURLOPT_PASSWORD => getenv('MAIL_PASSWORD'),
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CONNECTTIMEOUT => 5,
CURLOPT_TIMEOUT => 20,
]);
يهيّئ هذا نقل البريد لتطبيق قائم؛ يجب أن يكون وقت تشغيل cURL في PHP مرتبطًا بـ libcurl مع دعم IMAP. وجوده وحده لا يثبت كل بروتوكول مبني. استبدل نقاط النهاية ومعرّف صندوق البريد UID. بالنسبة لخادم بريد متاح للعامة حيث يُسمح بالوسطاء العامين، تقدّم قائمة وكلاء SOCKS5 مرشحين لعنوان URL الوكيل الخالي من بيانات الاعتماد الموضح؛ تأكد من الوصول إلى مضيف البريد ومنفذه الفعليين مع الاحتفاظ بحساب البريد وإعدادات TLS.
يصادق CURLOPT_USERNAME/CURLOPT_PASSWORD على خادم البريد. حساب SOCKS، عند الحاجة، يستخدم خيارات بيانات اعتماد وكيل مدعومة منفصلة. إضافة PHP IMAP عميل آخر ولا تُهيأ بهذه الإعدادات.
أبقِ التحقق من الشهادة ومن اسم المضيف مُفعّلًا لوجهة IMAPS. تعطيل كليهما ليس شرطًا مسبقًا للتوجيه.
أثناء معالجة النقل/النتيجة في التطبيق، حدّد المرحلة الفاشلة: تفاوض SOCKS، أو TLS البريد، أو تسجيل الدخول إلى IMAP أو اختيار صندوق البريد. الوكيل المتاح لا يُظهر وجود UID 1.