پیش از افزودن بازنویسی بیشتر به یک واکشی‌کننده PHP، انتخاب کنید منبع بعدی باید کجا برود. سندی که از https://destination.example/catalog/ واکشی و در https://viewer.example/browse?url=... بازگردانده می‌شود ممکن است شامل این‌ها باشد:

<img src="photo.jpg">
<a href="details/42">Details</a>

مرورگر آن ارجاع‌ها را با سندی که در نمایشگر دریافت کرده حل می‌کند. اینکه PHP بایت‌های اصلی را واکشی کرده باشد، مبدأ راه‌دور را تثبیت نمی‌کند.

یک عنصر base می‌تواند نشانی‌های نسبی را به مقصد اشاره دهد، اما آن درخواست‌ها ممکن است سپس مستقیماً از مرورگر به مقصد بروند. برای نگه‌داشتن هر درخواست از مسیر PHP، در عوض به نشانی‌های پراکسی و مدل مسیریابی گسترده‌تری نیاز است:

منبع یا کنشبرخورد لازم
پیوندها و تصاویرآنها را نسبت به سند راه‌دور حل کنید و مسیر موردنظر را تولید کنید
واردکردنی‌ها و منابع CSSاز مبدأ راه‌دور شیوه‌نامه استفاده کنید
فرم‌هاروش و داده‌های ارسالی را حفظ کنید
تغییر مسیرهاپیمایش را درون مدل مجاز نگه دارید
درخواست‌های ساخته‌شده با اسکریپتنشانی‌های غایب از HTML اصلی را مدیریت کنید

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

بازگرداندن نشانه‌گذاری نامطمئن از دامنه شما همچنین مبدأ مرورگر نمایشگر را به آن می‌دهد، نه هویت سایت واکشی‌شده را. آن اسناد را از صفحه‌های حساب و مدیریت جدا کنید. کوکی‌های راه‌دور برای هر بازدیدکننده، سرآیندهای مجاز برای ارسال و مقصدهای تغییر مسیر را تعریف کنید؛ یک شیشه کوکی مشترک می‌تواند ورودهای راه‌دور را درهم بیامیزد.

پیش از ارائه یک نشست مرور، به آن مرز پشتیبانی متعهد شوید. برای مرور معمولی از خروجی دیگر، رابط پراکسی بومی مرورگر، مانند تنظیمات HTTP/SOCKS در Firefox، نشانی مقصد و مدل مبدأ مرورگر را بدون نیاز به این لایه واکشی و بازنشر حفظ می‌کند. برای آزمون جداگانه یک سایت عمومی، فهرست پراکسی‌های رایگان نقاط پایانی نامزد را فراهم می‌کند؛ پروتکل را در تنظیمات مرورگر مطابقت دهید.

مقالات مرتبط