Преди да добавите още пренаписване към извличащ модул на PHP, изберете накъде трябва да отиде следващият ресурс. Документ, извлечен от https://destination.example/catalog/ и върнат на https://viewer.example/browse?url=..., може да съдържа:

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

Браузърът разрешава тези препратки чрез документа, който е получил в прегледа. Това, че PHP е изтеглил оригиналните байтове, не установява отдалечената база.

Елемент base може да насочва относителни URL адреси към местоназначението, но тези заявки след това могат да минават директно от браузъра към местоназначението. За да задържите всяка заявка през PHP вместо това, са нужни прокси URL адреси и по-широк модел на маршрутизиране:

Ресурс или действиеНеобходима обработка
Връзки и изображенияРазрешете ги спрямо отдалечения документ и създайте предвидения маршрут
CSS импорти и ресурсиИзползвайте отдалечената база на стиловата таблица
ФормиЗапазете метода и изпратените данни
ПренасочванияДръжте навигацията в рамките на разрешения модел
Заявки, създадени от скриптовеОбработвайте URL адреси, липсващи в оригиналния HTML

Няколко замествания с регулярни изрази не могат да гарантират обща съвместимост със сайтове, богати на скриптове. За известен публичен документ може да е достатъчно да изключите навигацията, да разрешите директни връзки или да насочите поддържано подмножество през прегледа. Запазвайте действителните типове медии, вместо да третирате всеки отговор като HTML.

Връщането на недоверено маркиране от вашия домейн също му дава произхода на браузъра на прегледа, а не идентичността на извлечения сайт. Изолирайте тези документи от страниците за акаунт и администрация. Определете отдалечени бисквитки за всеки посетител, разрешени за прехвърляне заглавки и местоназначения за пренасочване; споделен буркан за бисквитки може да смеси отдалечени вписвания.

Ангажирайте се с тази граница на поддръжка, преди да предложите сесия за разглеждане. За обикновено разглеждане през друг изход родният прокси интерфейс на браузъра, например настройките HTTP/SOCKS на Firefox, запазва URL адреса на местоназначението и модела на произход на браузъра, без да изисква този слой за извличане и повторно публикуване. За отделен тест на публичен сайт списъкът с безплатни прокси сървъри предоставя кандидати за крайни точки; съпоставете протокола в настройките на браузъра.

Подобни статии