Πλοήγηση σε web proxy με PHP: σχετικές διευθύνσεις URL, cookies και προελεύσεις
Σχεδιάστε τις διευθύνσεις URL πόρων, την πλοήγηση, τα cookies και τα όρια προέλευσης όταν μετατρέπετε την ανάκτηση με PHP σε web proxy για τον περιηγητή.
Πριν προσθέσετε περισσότερη επανεγγραφή σε έναν ανακτητή PHP, επιλέξτε πού πρέπει να πάει ο επόμενος πόρος. Ένα έγγραφο που ανακτάται από https://destination.example/catalog/ και επιστρέφεται στο https://viewer.example/browse?url=... μπορεί να περιέχει:
<img src="photo.jpg">
<a href="details/42">Details</a>Ο περιηγητής επιλύει αυτές τις αναφορές με το έγγραφο που έλαβε στον προβολέα. Το ότι η PHP ανάκτησε τα αρχικά byte δεν καθορίζει την απομακρυσμένη βάση.
Ένα στοιχείο base μπορεί να κατευθύνει σχετικές διευθύνσεις URL στον προορισμό, αλλά αυτά τα αιτήματα μπορεί τότε να πηγαίνουν απευθείας από τον περιηγητή στον προορισμό. Για να κρατήσετε κάθε αίτημα μέσω της PHP απαιτούνται διευθύνσεις URL proxy και ευρύτερο μοντέλο δρομολόγησης:
| Πόρος ή ενέργεια | Απαιτούμενος χειρισμός |
|---|---|
| Σύνδεσμοι και εικόνες | Επιλύστε τα ως προς το απομακρυσμένο έγγραφο και παράγετε τη σκοπούμενη διαδρομή |
| Εισαγωγές και πόροι CSS | Χρησιμοποιήστε την απομακρυσμένη βάση του φύλλου στυλ |
| Φόρμες | Διατηρήστε τη μέθοδο και τα υποβληθέντα δεδομένα |
| Ανακατευθύνσεις | Κρατήστε την πλοήγηση εντός του επιτρεπόμενου μοντέλου |
| Αιτήματα που δημιουργούν scripts | Χειριστείτε διευθύνσεις URL που λείπουν από το αρχικό HTML |
Μερικές αντικαταστάσεις με κανονικές εκφράσεις δεν μπορούν να εγγυηθούν γενική συμβατότητα με ιστότοπους γεμάτους scripts. Για ένα γνωστό δημόσιο έγγραφο, ίσως αρκεί να απενεργοποιήσετε την πλοήγηση, να επιτρέψετε απευθείας συνδέσμους ή να δρομολογήσετε ένα υποστηριζόμενο υποσύνολο μέσω του προβολέα. Διατηρήστε τους πραγματικούς τύπους μέσων αντί να αντιμετωπίζετε κάθε απόκριση ως HTML.
Η επιστροφή μη αξιόπιστης σήμανσης από τον τομέα σας της δίνει επίσης την προέλευση του περιηγητή του προβολέα, όχι την ταυτότητα του ιστότοπου που ανακτήθηκε. Απομονώστε αυτά τα έγγραφα από σελίδες λογαριασμού και διαχείρισης. Ορίστε απομακρυσμένα cookies ανά επισκέπτη, επιτρεπόμενες κεφαλίδες προώθησης και προορισμούς ανακατεύθυνσης; ένα κοινό βάζο cookies μπορεί να αναμείξει απομακρυσμένες συνδέσεις.
Δεσμευτείτε σε αυτό το όριο υποστήριξης πριν προσφέρετε συνεδρία περιήγησης. Για συνήθη περιήγηση μέσω άλλης εξόδου, η εγγενής διεπαφή proxy του περιηγητή, όπως οι ρυθμίσεις HTTP/SOCKS του Firefox, διατηρεί τη διεύθυνση URL προορισμού και το μοντέλο προέλευσης του περιηγητή χωρίς να απαιτεί αυτό το επίπεδο ανάκτησης και επαναδημοσίευσης. Για ξεχωριστή δοκιμή δημόσιου ιστότοπου, η λίστα δωρεάν proxy παρέχει υποψήφια τελικά σημεία; αντιστοιχίστε το πρωτόκολλο στις ρυθμίσεις του περιηγητή.