Înainte de a adăuga mai multă rescriere unui preluator PHP, alegeți unde trebuie să meargă următoarea resursă. Un document preluat de la https://destination.example/catalog/ și returnat la https://viewer.example/browse?url=... poate conține:

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

Browserul rezolvă acele referințe cu documentul primit în vizualizator. Faptul că PHP a preluat octeții originali nu stabilește baza la distanță.

Un element base poate îndrepta URL-urile relative spre destinație, dar acele cereri pot merge apoi direct de la browser la destinație. Pentru a menține fiecare cerere prin PHP sunt necesare în schimb URL-uri de proxy și un model de rutare mai larg:

Resursă sau acțiuneTratament necesar
Legături și imaginiRezolvați-le față de documentul la distanță și produceți ruta dorită
Importuri și resurse CSSFolosiți baza la distanță a foii de stil
FormularePăstrați metoda și datele trimise
RedirecționăriMențineți navigarea în modelul permis
Cereri create de scripturiTratați URL-urile absente din HTML-ul original

Câteva înlocuiri cu expresii regulate nu pot promite compatibilitate generală cu site-uri pline de scripturi. Pentru un document public cunoscut, poate fi suficient să dezactivați navigarea, să permiteți legături directe sau să dirijați un subset acceptat prin vizualizator. Păstrați tipurile reale de media în loc să tratați fiecare răspuns ca HTML.

Returnarea de marcaj neîncrezut din domeniul dvs. îi oferă și originea de browser a vizualizatorului, nu identitatea site-ului preluat. Izolați acele documente de paginile de cont și administrare. Definiți cookie-uri la distanță pentru fiecare vizitator, anteturi permise de transfer și destinații de redirecționare; un borcan de cookie-uri partajat poate amesteca autentificări la distanță.

Angajați-vă față de această limită de suport înainte de a oferi o sesiune de navigare. Pentru navigarea obișnuită printr-o altă ieșire, interfața proxy nativă a browserului, cum ar fi setările HTTP/SOCKS din Firefox, păstrează URL-ul destinației și modelul de origine al browserului fără a necesita acest strat de preluare și republicare. Pentru un test separat de site public, lista de proxy-uri gratuite oferă puncte finale candidate; potriviți protocolul în setările browserului.

Articole similare