Referer anzeigen
Ingo Siemon
- html
Hallo
Ich habe per .htaccess-Datei dafür gesorgt,
dass eine eigene 404er Fehlerseite angezeigt wird.
Nun würde ich gerne auf dieser 404er Fehlerseite auch
den Namen der aufgerufenen (aber nicht mehr vorhandenen Datei) anzeigen.
So nach dem Motto:
"Die gewünschte Datei (xyz.htm) ist leider nicht mehr vorhanden"
Kann mir jemand einen Denkanstoss geben, wie ich das
am betsen lösen kann?
Gruß
Ingo
Hallo Ingo.
Nun würde ich gerne auf dieser 404er Fehlerseite auch
den Namen der aufgerufenen (aber nicht mehr vorhandenen Datei) anzeigen.[…]
Kann mir jemand einen Denkanstoss geben, wie ich das
am betsen lösen kann?
Das hängt davon ab, was du zur Verfügung stehen hast (SSI? PHP? …?) und was du kannst. Selbst mit JavaScript ist dies machbar.
Einen schönen Mittwoch noch.
Gruß, Ashura
Hallo Ashura
Das hängt davon ab, was du zur Verfügung stehen hast (SSI? PHP? …?) und was du kannst. Selbst mit JavaScript ist dies machbar.
Zur Verfügung steht unter anderem PHP und SSI.
Ich würde das am liebsten per PHP machen.
Oder ist das was anderes ratsamer?
Können tu ich PHP leider nur ein kleines bisschen.
Darum benötige ich auch Hilfe.
Gruß
Ingo
hi,
Zur Verfügung steht unter anderem PHP und SSI.
Ich würde das am liebsten per PHP machen.
Dann schau dir mittels print_r($_SERVER) an, wo du deine gewünschte Info findest.
gruß,
wahsaga
Hell-O!
Zur Verfügung steht unter anderem PHP und SSI.
Ich würde das am liebsten per PHP machen.
Dann schau dir mal die Variable $_SERVER an. Wie man diese ausgibt, wirst du sicher schon wissen. Übrigens, mit dem Referrer hat dein Problem nichts zu tun.
Siechfred
Hallo Siechfred
Dann schau dir mal die Variable $_SERVER an. Wie man diese ausgibt, wirst du sicher schon wissen.
OK, ich habe das nun so gemacht:
<?php echo strtoupper(substr($_SERVER['REQUEST_URI'],16,-4)); ?>
und es klappt ganz genau so, wie ich mir gewünscht habe.
Übrigens, mit dem Referrer hat dein Problem nichts zu tun.
Ja stimmt natürlich.
Ich wusste nur nicht, wie ich es sonst bezeichnen sollte.
Au die Idee, die Du hattest, bin ich nicht gekommen.
Vielen lieben Dank für Eure Hilfe und
Gruß aus Münster
Ingo
hi,
OK, ich habe das nun so gemacht:
<?php echo strtoupper(substr($_SERVER['REQUEST_URI'],16,-4)); ?>
und es klappt ganz genau so, wie ich mir gewünscht habe.
Damit wird die Seite aber anfällig für Cross Site Scripting/XSS - da der Client u.U. Möglichkeiten hat, den REQUEST_URI zu manipulieren.
Wende also bitte noch htmlspecialchars() auf den Wert an, bevor du ihn in die Seite ausgibst.
gruß,
wahsaga
Hallo wahsaga
Damit wird die Seite aber anfällig für Cross Site Scripting/XSS - da der Client u.U. Möglichkeiten hat, den REQUEST_URI zu manipulieren.
OK, ich verstehe.
Wende also bitte noch htmlspecialchars() auf den Wert an, bevor du ihn in die Seite ausgibst.
Dann müsste es do so richtig sein:
<?php echo htmlspecialchars(strtoupper(substr($_SERVER['REQUEST_URI'],16,-4)), ENT_QUOTES); ?>
richtig?
Gruß
Ingo
Hi wahsaga,
Damit wird die Seite aber anfällig für Cross Site Scripting/XSS - da der Client u.U. Möglichkeiten hat, den REQUEST_URI zu manipulieren.
Wende also bitte noch htmlspecialchars() auf den Wert an, bevor du ihn in die Seite ausgibst.
Grundsätzlich hast du natürlich Recht - aber ist das hier wirklich so von Wichtigkeit? Will sagen, die Seite erhält in der der Form doch nur der aufrufende Client, der Angreifer würde doch also nur sich selber schaden - oder sehe ich da entwas grundliegend falsch?
MfG, Dennis.
Hallo Dennis,
Grundsätzlich hast du natürlich Recht - aber ist das hier wirklich so von Wichtigkeit? Will sagen, die Seite erhält in der der Form doch nur der aufrufende Client, der Angreifer würde doch also nur sich selber schaden - oder sehe ich da entwas grundliegend falsch?
das dachte ich auch, aber wenn ein Spammer mittels HTML-Mail einen verdeckten Verweis zur Anzeige bringen kann, ist dort schon Schindluder machbar. Per Default kann die Anfragezeile des Apachen 8kB groß sein. Mit 8kB hast Du genug Platz, um das gesammte Dokument nach Deinen Vorstellungen aussehen zu lassen.
Gruß aus Berlin!
eddi
Lieber Eddi
das dachte ich auch, aber wenn ein Spammer mittels HTML-Mail einen verdeckten Verweis zur Anzeige bringen kann, ist dort schon Schindluder machbar. Per Default kann die Anfragezeile des Apachen 8kB groß sein. Mit 8kB hast Du genug Platz, um das gesammte Dokument nach Deinen Vorstellungen aussehen zu lassen.
Aber so:
<?php echo strtoupper(substr($_SERVER['REQUEST_URI'],16,-4)); ?>
müsste das doch sicher sein, oder was meinst Du?
Gruß
Ingo
Sorry, ich meinte natürlich so:
<?php echo htmlspecialchars(strtoupper(substr($_SERVER['REQUEST_URI'],16,-4)), ENT_QUOTES); ?>
Hallo Ingo,
<?php echo htmlspecialchars(strtoupper(substr($_SERVER['REQUEST_URI'],16,-4)), ENT_QUOTES); ?>
mir ist zwar nicht klar, warum strtoupper() Verwendung findet, aber sicher ist es jetzt - ja.
Gruß aus Berlin!
eddi
Lieber Eddi
mir ist zwar nicht klar, warum strtoupper() Verwendung findet,´
Das hat einen ganz anderen Grund, der mit meinem Anliegen
bezüglich der Sicherheit nix zu tun hat.
aber sicher ist es jetzt - ja.
Das freut mich doch zu hören :)
Danke für den Tipp.
Gruß
Ingo
Hell-O!
Ich habe per .htaccess-Datei dafür gesorgt, dass eine eigene 404er Fehlerseite angezeigt wird.
Nun würde ich gerne auf dieser 404er Fehlerseite auch den Namen der aufgerufenen (aber nicht mehr vorhandenen Datei) anzeigen.
Diese Information steht serverseitig in der CGI-Umgebungsvariable REQUEST_URI zur Verfügung. Ggf. in Kombination mit SERVER_NAME lässt sich eine vollständige URL zusammenbauen. Wie das geht, hängt von der serverseitigen Technik ab, das Einfachste wäre SSI.
Siechfred