پروکسی درخواست را حمل می‌کند. موتور کوکی PHP cURL تعیین می‌کند کلاینت کدام کوکی‌های مقصد را می‌فرستد. هر دو را روی دستگیره‌ای که انتقال را انجام می‌دهد پیکربندی کنید. فهرست پروکسی HTTP هنگامی که این کار می‌تواند از واسطه‌های عمومی استفاده کند، نامزدهایی برای مسیر فراهم می‌کند:

curl_setopt($handle, CURLOPT_PROXY, 'http://203.0.113.10:8080');
curl_setopt($handle, CURLOPT_COOKIEFILE, '');

مقدار خالی COOKIEFILE موتور کوکی را بدون بارگذاری فایل کوکی اولیه فعال می‌کند. درخواست‌های بعدی روی همان دستگیره می‌توانند کوکی‌های منطبق دریافت‌شده از مقصد را بفرستند.

برای ماندگاری میان دستگیره‌ها یا فرایندهای جداگانه ساخته‌شده، از سیاست آگاهانه فایل کوکی استفاده کنید. COOKIEFILE کوکی‌ها را می‌خواند؛ COOKIEJAR کوکی‌هایی را می‌نویسد که libcurl نگه می‌دارد. دادن مسیر به COOKIEJAR به معنای خواندن آن هم نیست.

فایل‌های کوکی را بر اساس نشست یا حسابی که برنامه در نظر دارد جدا نگه دارید. فایل مشترکی که کارهای هم‌زمان استفاده می‌کنند می‌تواند وضعیت را مستقل از پروکسی‌ای که هر کار انتخاب می‌کند درهم بیامیزد. فایل را محافظت کنید، زیرا کوکی نشست می‌تواند دسترسی بدهد حتی اگر به عنوان گذرواژه برچسب نخورده باشد.

اگر گردش کار نیاز دارد وضعیت کنونی کوکی پیش از پاک‌سازی نوشته شود، فرمان‌های مستند کوکی libcurl را بررسی کنید. به فراخوانی curl_close در یک نمونه قدیمی PHP به عنوان تنها توضیح زمان نوشتن وضعیت تکیه نکنید.

تغییر IP پروکسی سیاست کوکی را دست‌نخورده می‌گذارد مگر اینکه برنامه آن را تغییر دهد. نشست ردشده را به عنوان پاسخ مقصد تشخیص دهید، نه اینکه فرض کنید پروکسی باید ورود را به یاد داشته باشد.

مقالات مرتبط