Wie Schreibe ich ein einfaches PHP-proxy?
Ich brauche, um eine proxy-Skript, welches den Zugriff auf eine Seite, versteckt hinter einem login-Bildschirm. Ich brauche nicht den proxy zu "simulieren" einloggen, statt der login-Seite HTML angezeigt werden soll, auf das der Benutzer normalerweise, und alle cookies und HTTP-GET/POST-Daten fließen durch den proxy zum server, damit der login sollte authentisch sein.
Ich will nicht, login/Passwort, ich brauche nur Zugriff auf den HTML-Quelltext der generierten Seiten nach einloggen.
Hat jemand hier wissen, wie dies erreicht werden kann? Ist es einfach?
Wenn nicht, wo fange ich an?* (Ich bin derzeit mit PHP)*
InformationsquelleAutor Robinicks | 2009-07-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Was du redest, ist der Zugriff auf Seiten, die für die müssen Sie sich authentifizieren.
Hier sind ein paar Dinge, die festgelegt werden müssen:
Der entscheidende Punkt ist, dass Sie keinen Zugriff ohne Authentifizierung dich zuerst.
Als für die Sprache, es ist gut machbar in PHP. Und wie die tags auf die Frage, schlage vor, Sie verwenden die richtigen Werkzeuge, um diesen job bereits.
Eine Sache, die ich gerne wissen würde ist, warum Sie nennen es ein "proxy"? wollen Sie dienen, den Inhalt an andere Nutzer?
EDIT: [update nach Kommentar]
In diesem Fall verwenden Sie phproxy. Es tut, was Sie wollen, zusammen mit einer Vielzahl anderer features.
Oh. Antwort aktualisiert.
InformationsquelleAutor jrharshath
Haben Sie Ihre PHP-Skript Anfrage die URL, die Sie möchten, neu zu schreiben und alle links und Formular-Aktionen zum Punkt zurück zu Ihrem php-Skript. Beim empfangen von Anfragen an das Skript, das einen URL-parameter, nach vorne, um den remote-server und wiederholen Sie.
Werden Sie nicht in der Lage sein zu fangen alle JavaScript-Anfragen (es sei denn, man implementiert eine JavaScript-Teil von Ihr "proxy")
ZB: User-Typen http://example.com/login.php in Ihrem proxy-Formular.
senden Sie dem Benutzer zu http://yoursite.com/proxy.php?url=http://example.com/login.php
stellen Sie sicher, dass urlencode parameter "http://example.com/login.php"
In http://yoursite.com/proxy.php, machen Sie eine HTTP-Anforderung an http://example.com/login.php
Beachten Sie, dass /einige-smart-regex-hier/ich ist eigentlich ein regex-Ausdruck, den Sie schreiben sollten, zu analysieren-links, und so.
Beispiel nur Proxys, die HTTP-Body, möchten Sie vielleicht, um einen proxy für den HTTP-Headern. Sie können die Verwendung von fsockopen() oder PHP-stream-Funktionen mit PHP5+ (stream_socket_client() etc.)
Sehr wahr! ^^ Verwenden von curl oder fsockopen anstatt file_get_contents. Oder desinfizieren Sie die $url;
Dank für die Festsetzung, -1 --> +1
InformationsquelleAutor bucabay
Man könnte prüfen,http://code.google.com/p/php-transparent-proxy/ , machte ich es, weil ich gefragt wurde mir die exakt gleiche Frage und ich beschlossen, eine zu machen. Es ist unter der BSD-Lizenz, also viel Spaß 🙂
InformationsquelleAutor Évelyne Lachance
Ich würde empfehlen mit Curl (php-Bibliothek, die Sie benötigen könnten, zu aktivieren in der php.ini)
Es dient zum Bearbeiten von Webseiten, Umgang mit cookies und alle http-Parameter, die Sie benötigen.
Sie müssen schreiben Sie Ihre proxy-basierend auf den web-Seiten werden Sie schlagen, aber Sie machen den job.
InformationsquelleAutor Rodolphe