Sven Rautenberg: Mit mod_rewrite pdf in Frameset betten

Beitrag lesen

Moin!

Aber wenn das so ist, dann muß einfach Dein Frameset nur "unübersetzbare" URLs liefern.
Vielleicht reicht es schon, wenn es einen "unnötigen" Query-String an das eingebettete Dokument dranhängt, den dann Deine (etwas modifizierter) RewriteCond (der dann explizit _kein_ '?' matchen darf) nicht mehr übersetzt?

Ich bin eigentlich der Meinung, daß es für dieses Problem keine Lösung gibt - jedenfalls keine, die a) immer funktioniert und b) mod_rewrite verwendet.

Wenn ein Request das PDF abfordert: Woran kann man erkennen, daß dieser Request durch das eigene Frameset erfolgte? Garnicht! Naja, fast garnicht, denn der Referrer _könnte_ (!!! Drei Ausrufezeichen, denn mein Browser sendet derzeit keine Referrer) von der eigenen Domain herkommen und damit _andeuten_ (nicht beweisen), daß der Request von der eigenen Seite kommt.

Lösung URL-Parameter? Auch nicht wirklich. Für eine kurze Zeit werden die extern beheimateten Links keinen Parameter haben, der interne Link aber schon - solange bis Suchmaschinen und andere Webmaster das herausgefunden haben. Und dann werden die externen Links auch einen Parameter kriegen und somit das PDF direkt abfordern.

Was bleibt? Nicht viel.
Man kann den Referrer auswerten: Wenn dieser _nicht_ die eigene Domain spezifiziert, dann redirectet man den Request auf das Frameset (welches dann bitteschön hoffentlich direkt zum PDF leitet). Wenn kein Referrer gesendet wird, oder einer der eigenen Domain, dann ist der Request vermutlich gültig und wird so durchgelassen. Ich würde von diesem ganzen Schwachfug dann verschont bleiben (dank des nicht gesendeten Referrers).

Man kann auch versuchen, mit einem regelmäßig wechselnden URL-Parameter den Leuten vornewegzulaufen - dazu sollte der Parameter im Link dann aber auch dynamisch wechseln, sonst hat man regelmäßig wieder das Problem. Und ob's hilft, ist auch die Frage.

- Sven Rautenberg