Erkennen, wer PHP-Seite mit iframe eingebunden hat
remuen
- php
0 Tom0 remuen0 Tom
0 Thomas Luethi
0 Thomas Luethi0 remuen0 Thomas Luethi0 remuen
Hallo
Ich möchte eine meiner Seiten anderen Websites kostenlos zum Einbinden zur Verfügung stellen, z.B. mittels dem HTML-Tag iframe (Beispiel: <iframe src="http://www.nak-badragaz.ch/xy.php" frameborder="0" width="95%" height="1000" scrolling="no"></iframe>).
Damit meine Seite nicht in x-beliebige Websites eingebunden werden kann, möchte ich überprüfen, von wo (welchem Account) aus sie aufgerufen wird - ähnlich wie das z.B. bei Gästebüchern oder Countern gemacht wird. Ich gehe dabei davon aus, dass einige der Websites, die meine Seite einbinden dürfen, weder PHP, Perl, CGI, ASP etc. zur Verfügung haben.
Ist diese Kontrolle möglich und wenn ja, wie?
Danke für jeden Hinweis und/oder Link.
Gruss
René
Hello,
die Kontrolle ist nur bedingt möglich.
Du könntest den Referer abfragen mittels Script. Wenn er richtig ist, die Datei ausliefern. Wenn keiner geliefert wird, oder der Referer falsch ist, eine Ersatzseite anbieten.
Wenn Deine Inhalte so interessant sind, kann man ja seinen Referer anschalten. Sonst hast Du eben Pech gehabt.
Liebe Grüße aus http://www.braunschweig.de
Tom
Hallo,
Wenn Deine Inhalte so interessant sind, kann man ja seinen Referer anschalten. Sonst hast Du eben Pech gehabt.
Das ist ja genau die Krux: Wenn ich mir meine Logfiles anschaue, haben wohl an die 50% der Besucher keinen Referer. Die Inhalte (ein Quiz) dieser Seite sind sicher für manche Besucher interessant, jedoch dürfte es ziemlich unrealistisch sein, zuerst das Anschalten des Referers zu verlangen ...
Gibt es keinen anderen Weg?
Gruss
René
Hello,
Gibt es keinen anderen Weg?
Authentification
Sessions mit und ohne
Liebe Grüße aus http://www.braunschweig.de
Tom
Hallo,
Wenn Deine Inhalte so interessant sind, kann man ja seinen Referer anschalten. Sonst hast Du eben Pech gehabt.
Nicht alle Benutzer haben die Kontrolle ueber ihren Datenverkehr.
Z.B. gibt es in Firmen auch Firewalls, die Referrer ausfiltern.
Einen leeren Referrer wuerde ich nie mit Zugangsverbot "bestrafen",
einen falschen dagegen schon.
Gruesse,
Thomas
der eine .htaccess-Loesung verwendet, um ein paar
unwichtige Bilder vor beepworld-Teenagern zu schuetzen.
Hallo,
Ich möchte eine meiner Seiten anderen Websites kostenlos zum Einbinden zur Verfügung stellen, z.B. mittels dem HTML-Tag iframe (Beispiel: <iframe src="http://www.nak-badragaz.ch/xy.php" frameborder="0" width="95%" height="1000" scrolling="no"></iframe>).
Den Referrer kriegst Du in PHP mit der Variablen
$_SERVER["HTTP_REFERER"]
Ich weiss von Grafiken her, dass der Browser, wenn er vom
Server eine Grafik verlangt, sagt: "Ich komme von der und
der Seite (Referrer), bitte schick mir die Grafik xyz.jpg".
Ich vermute, dass das bei IFRAME auch so ist, dass also
die URL der "aeusseren" (einbettenden) Seite im Referrer
steht beim Abruf der mit IFRAME eingebundenen Seite.
Guck einfach mal ins Logfile Deines Webservers.
Oder bau irgendwo im PHP folgende Zeilen ein,
welche den Referrer in einen HTML-Kommentar schreiben:
$herkunft=htmlspecialchars($_SERVER["HTTP_REFERER"]);
echo "<!-- Referrer: [$herkunft] -->\n";
Der Referrer wird von manchen Browsern nicht mitgeliefert,
oder er wird unterwegs irgendwo zwischen dem Browser und
dem Webserver rausgefiltert oder sogar gefaelscht, z.B.
durch WebWasher, Firewalls, Proxies...
Er ist also keine zuverlaessige Basis fuer Entscheidungen.
Damit meine Seite nicht in x-beliebige Websites eingebunden werden kann, möchte ich überprüfen, von wo (welchem Account) aus sie aufgerufen wird [...]
Du kannst Dich nicht richtig schuetzen.
Was im Quelltext einer Seite steht, kann irgendwer abschreiben.
Auch mit IDs u.s.w. kannst Du nie sicher sein, dass die
Datei effektiv dort eingebunden wurde, wo Du moechtest.
Ein Ansatz waere:
Die Anzeige ist grundsaetzlich "verboten".
Wenn der Referrer leer ist, oder wenn er in einem
von Dir definierten Set von URLs enthalten ist,
dann ist der Zugriff "erlaubt".
Gruesse,
Thomas
Hallo Thomas
Guck einfach mal ins Logfile Deines Webservers.
Der Referer wird bei Verwendung von iframe mitgeliefert und ich könnte ihn auch auswerten, jedoch ...
... der Referrer wird von manchen Browsern nicht mitgeliefert,
oder er wird unterwegs irgendwo zwischen dem Browser und
dem Webserver rausgefiltert oder sogar gefaelscht, z.B.
durch WebWasher, Firewalls, Proxies...Er ist also keine zuverlaessige Basis fuer Entscheidungen.
Das ist eben mein Problem. Und ich möchte ja nicht den unschuldigen Besucher der Website, die meine Seite mit meiner Erlaubnis einbindet, büssen lassen, sondern eigentlich den Webmaster, der meine Seite einbinden will, blöd dastehen lassen, weil die Seite nicht angezeigt wird (oder mit einem anderen Inhalt).
Kommt mir gerade ein Gedanke: Kann ich allenfalls auf dem Account der Website, die meine Seite einbinden will, das Vorhandensein eines bestimmten Kontrollfiles überprüfen, wenn meine Seite aufgerufen wird? Ich sehe zwar auch da wiederum keinen Weg, das zu prüfen ...
Also, nur um das klarzustellen: Die Lösung dieses Problems ist nicht lebenswichtig, aber schön wäre, es lösen zu können ...
Gruss
René
Hallo Rene,
Kommt mir gerade ein Gedanke: Kann ich allenfalls auf dem Account der Website, die meine Seite einbinden will, das Vorhandensein eines bestimmten Kontrollfiles überprüfen, wenn meine Seite aufgerufen wird? Ich sehe zwar auch da wiederum keinen Weg, das zu prüfen ...
PHP kann auch als Client ("Browser") taetig sein, d.h.
von einem anderen Server eine Datei per HTTP anfordern,
z.B. mit fsockopen()
Aber eben: Es steht und faellt mit dem Referrer,
zu erfahren, wo die Leute herkommen.
Also, nur um das klarzustellen: Die Lösung dieses Problems ist nicht lebenswichtig, aber schön wäre, es lösen zu können ...
Eine etwas zuverlaessigere "Loesung" waere hoechstens
moeglich, wenn auch die fremden Seiten dynamisch
generiert wuerden.
Dann koenntest Du irgendwo versteckt ein regelmaessig
wechselndes "Passwort" anbieten, das als Parameter
an die URL der iframe-Seite angehaengt werden muss.
Natuerlich ist auch dieser Paramter durch Analyse
des Quelltexts maschinell auslesbar, aber diesen
Aufwand wuerde wohl kaum jemand auf sich nehmen.
--
Eine Loesung, an die bisher niemand gedacht hat:
Appelliere an die Fairness und das Rechtsempfinden
der fremden "Webmaster".
Schreib klar hin, dass das Framen der Seite nur
mit Deinem schriftlichen Einverstaendnis erlaubt ist.
Das Framen von fremden Seiten ohne Erlaubnis ist
nicht nur unfair, sondern wahrscheinlich auch
ein Verstoss gegen das Urheberrecht.
(Mir sind noch keine Schweizer Gerichtsurteile dazu
bekannt, aber AFAIK gab es in Deutschland schon
einiges zum Thema. Umsomehr erstaunt es mich, dass
freenet.de (extra kein Link) die Suchresultate immer noch
im eigenen Frameset anzeigt. _Das_ waere doch mal
was fuer die arbeitslosen Abmahn-Anwaelte...)
Gruesse,
Thomas
Hi Thomas,
Aber eben: Es steht und faellt mit dem Referrer,
zu erfahren, wo die Leute herkommen.
Womit der Kreis wieder geschlossen wäre ... ;-)
Eine etwas zuverlaessigere "Loesung" waere hoechstens
moeglich, wenn auch die fremden Seiten dynamisch
generiert wuerden.
Davon kann ich vermutlich nicht ausgehen, denn die Seiten, die ich so unterstütze, tendenziell wohl meist Billig-Hostingangebote ohne PHP-Unterstützung etc. nutzen
Eine Loesung, an die bisher niemand gedacht hat:
Appelliere an die Fairness und das Rechtsempfinden
der fremden "Webmaster".
Schreib klar hin, dass das Framen der Seite nur
mit Deinem schriftlichen Einverstaendnis erlaubt ist.
Doch, daran habe ich schon gedacht (siehe Beispielseite auf http://remuen.home.solnet.ch/bibelquiz. Vertrauen ist gut, Kontrolle jedoch immer noch besser.
Also werde ich dann wohl gelegentlich einen Blick ins Logfile des Servers werfen müssen, da ja glücklicherweise noch ab und zu jemand seinen Referer vorweist ;-)
Das Framen von fremden Seiten ohne Erlaubnis ist
nicht nur unfair, sondern wahrscheinlich auch
ein Verstoss gegen das Urheberrecht.
Und trotzdem wird's immer wieder gemacht, meist wohl von phantasielosen, faulen Leuten, bei denen vermutlich sonst noch einiges nicht stimmt :-(
Herzlichen Dank und Grüsse aus der meist nebelfreien, jedoch z.Zt. eiskalten Ostschweiz.
René
PS: Hab vorhin fast das gleiche Posting abgeschickt. Das ist jedoch im forum einfach nicht erschienen ?????