Mielőtt további átírást adna egy PHP letöltőhöz, válassza ki, hová kerüljön a következő erőforrás. A https://destination.example/catalog/ címről lekért és a https://viewer.example/browse?url=... címen visszaadott dokumentum tartalmazhatja:

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

A böngésző ezeket a hivatkozásokat a nézegetőben kapott dokumentummal oldja fel. Az, hogy a PHP lekérte az eredeti bájtokat, nem alapozza meg a távoli bázist.

Egy base elem a célra irányíthatja a relatív URL-eket, de ezek a kérések aztán közvetlenül a böngészőtől a cél felé mehetnek. Ha minden kérést a PHP-n keresztül szeretne tartani, helyette proxy URL-ekre és szélesebb útvonalmodellre van szükség:

Erőforrás vagy műveletSzükséges kezelés
Hivatkozások és képekOldja fel a távoli dokumentumhoz képest, és állítsa elő a szándékolt útvonalat
CSS-importok és erőforrásokHasználja a stíluslap távoli bázisát
ŰrlapokŐrizze meg a metódust és az elküldött adatokat
ÁtirányításokTartsa a navigációt az engedélyezett modellen belül
Szkript által létrehozott kérésekKezelje az eredeti HTML-ből hiányzó URL-eket

Néhány reguláris kifejezéses helyettesítés nem ígérhet általános kompatibilitást a szkriptben gazdag oldalakkal. Egy ismert nyilvános dokumentumnál elég lehet a navigáció kikapcsolása, a közvetlen hivatkozások engedélyezése vagy egy támogatott részhalmaz átirányítása a nézegetőn. Őrizze meg a tényleges médiatípusokat, ahelyett hogy minden választ HTML-ként kezelne.

Ha megbízhatatlan jelölést ad ki a domainjéről, az a nézegető böngésző-origóját kapja, nem a lekért oldal identitását. Különítse el ezeket a dokumentumokat a fiók- és adminoldalaktól. Határozzon meg látogatónkénti távoli sütiket, engedélyezett továbbított fejléceket és átirányítási célokat; a megosztott sütisüveg összekeverheti a távoli bejelentkezéseket.

Kötelezze el magát ehhez a támogatási határhoz, mielőtt böngészési munkamenetet kínál. A más kijáraton át történő szokásos böngészéshez a böngésző saját proxyfelülete, például a Firefox HTTP/SOCKS beállításai, megőrzi a böngésző cél-URL-jét és origómodelljét anélkül, hogy szükség lenne erre a letöltő és újraközzétevő rétegre. Egy külön nyilvános oldal teszteléséhez az ingyenes proxyk listája jelölt végpontokat kínál; egyeztesse a protokollt a böngésző beállításaiban.

Kapcsolódó cikkek