Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

HTTP_REFERER funzt nicht...

Empfohlene Antworten

Veröffentlicht

Moin!

Hab mal wieder ein mir unerklärliches PHP-Problem. Ich möchte eine 404-Fehlerseite bauen, die mir die REQUEST_URI und den HTTP_REFERER per Mail versendet, damit ich weiß, auf welcher Seite der falsche Link steht (wenn es denn ein falscher Link ist). Die REQUEST_URI funzt auch problemlos, aber den Referer bekomme ich einfach nicht... Egal, wie ich die Variable anspreche, sie bleibt leer.

Ich hab schon folgendes versucht:

$_SERVER('HTTP_REFERER');

getenv('HTTP_REFERER');

$HTTP_REFERER;

Alles erfolglos...

Auch iner Apache- bzw. PHP-Konfiguration hab ich schon herumgeguckt, aber ohne einen Ansatzpunkt zu finden...

Woran könnte es denn liegen, daß der Referer leer bleibt (mal abgesehen davon, daß man von garkeiner Seite kommt, sondern die URL direkt eingegeben hat)? Und gibt es sonst noch andere Variablen, die die Seite angeben, von der man kommt?

thx für alle Tips!

Hallo,

vielleicht hilft dir das hier: :D

Es kann also mehrere Möglicjkeiten geben, warum das bei dir nicht funktioniert.

http://www.dclp-faq.de/q-http-referer.html

Gruß Jaraz

Hi,

zumendest die Ausgabe des referers läuft bei mir so:

echo $HTTP_SERVER_VARS["HTTP_REFERER"];

ist $_SERVER nicht eigentlich ein Array ?

MfG

  • Autor

@Jaraz: thx, aber das war's nicht - war mal wieder eigene Blödheit... - das Problem wäre soweit gelöst.

Wegen der Problematik, daß der Referer teilweise nicht gesendet wird: OK, wenn nicht, hab ich Pech gehabt, aber es ist immerhin die einzige Möglichkeit, sinnvoll festzustellen, auf welcher Seite jemand den fehlerhaften link gefunden hat...

Jetzt ist mir dummerweise allerdings ein anderes Problem aufgefallen - 404-Seiten funzen ja garnicht für PHP-Scripte (weder auf dem Apache noch auf dem IIS)... - gibt's eine Möglichkeit auf beiden Servern, auch für Seiten mit der Endung php die 404-Fehler zu verwenden?

  • Autor
Original geschrieben von DanielH

Hi,

zumendest die Ausgabe des referers läuft bei mir so:

echo $HTTP_SERVER_VARS["HTTP_REFERER"];

ist $_SERVER nicht eigentlich ein Array ?

MfG

$_SERVER ist seit PHP 4.1 eigentlich die Kurzform von $HTTP_SERVER_VARS - damit kann man halt schneller auf die Variablen zugreifen... Genauso kann man mit $_SESSION z.B. Session-Variablen direkt ansprechen und ändern ohne sie per session_register etc zu setzen...

Original geschrieben von beetFreeQ

Jetzt ist mir dummerweise allerdings ein anderes Problem aufgefallen - 404-Seiten funzen ja garnicht für PHP-Scripte (weder auf dem Apache noch auf dem IIS)... - gibt's eine Möglichkeit auf beiden Servern, auch für Seiten mit der Endung php die 404-Fehler zu verwenden?

Beim Apachen in der httpd.conf oder in der entsprechenden .htaccess Datei folgende Zeile angeben oder ändern: ErrorDocument 404 /missing.php

Gruß Jaraz

  • Autor
Original geschrieben von Jaraz

Beim Apachen in der httpd.conf oder in der entsprechenden .htaccess Datei folgende Zeile angeben oder ändern: ErrorDocument 404 /missing.php

Gruß Jaraz

Hab ich. Wenn ich als Link eine normale HTML-Datei hab, die nicht vorhanden ist, werde ich auch problemlos auf die 404-Seite geleitet. Bei einer PHP-Seite bekomme ich aber den "Internat Server Error"... - und unterm IIS hab ich immer folgende Meldung: "Warning: Failed opening 'D:\webprojekte\test\test.php' for inclusion (include_path='.;c:\php4\pear') in Unknown on line 0" - dabei wird da eigentlich nichts inkludiert...

Original geschrieben von beetFreeQ

$_SERVER ist seit PHP 4.1 eigentlich die Kurzform von $HTTP_SERVER_VARS - damit kann man halt schneller auf die Variablen zugreifen... Genauso kann man mit $_SESSION z.B. Session-Variablen direkt ansprechen und ändern ohne sie per session_register etc zu setzen...

ist klar, ich meinte nur dein erstes Posting, wo du über $_SERVER('bla') arbeitest, das funzt bri mir immer nur mit eckigen Klammern, ich lasse mich da aber gerne eines besseren belehren :)

  • Autor
Original geschrieben von DanielH

ist klar, ich meinte nur dein erstes Posting, wo du über $_SERVER('bla') arbeitest, das funzt bri mir immer nur mit eckigen Klammern, ich lasse mich da aber gerne eines besseren belehren :)

Oops... :rolleyes: :rolleyes: - meinte auch die eckigen ;)...

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.