Fehlerseite
Fehlerseite
Hi OXPUS,
ich glaube ich muss dich mal wieder stören. Ich wollte mir eine Fehlerseite mit PHP machen, bei der die IP-Adresse und die gesuchte URL per E-Mail an mich geschickt wird. Das die E-Mail verschickt wird klappt auch wunderbar, allerdings bekomme ich das mit der IP-Adresse und der gesuchten URL irgendwie nicht hin. Ich habe dir mal mein Script angehängt. Ich hoffe du kannst mir helfen.
Danke!
ich glaube ich muss dich mal wieder stören. Ich wollte mir eine Fehlerseite mit PHP machen, bei der die IP-Adresse und die gesuchte URL per E-Mail an mich geschickt wird. Das die E-Mail verschickt wird klappt auch wunderbar, allerdings bekomme ich das mit der IP-Adresse und der gesuchten URL irgendwie nicht hin. Ich habe dir mal mein Script angehängt. Ich hoffe du kannst mir helfen.
Danke!
- Dateianhänge
-
- 404.zip
- (477 Bytes) 565-mal heruntergeladen
Site: www.mx-forums.de - New!
phpBB MODs: Click Here
phpBB MODs: Click Here
- oxpus
- Administrator
- Beiträge: 28737
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Die IP ist mit $HTTP_SERVER_VARS['REMOTE_ADDR'], die URL mit $HTTP_SERVER_VARS['REQUEST_URI'] abrufbar.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Hmm ... jetzt kommt:
Code: Alles auswählen
Notice: Undefined variable: HTTP_SERVER_VARS in /www/usersites/m-r/mx-forums/pub/error/404.php on line 5
Notice: Undefined variable: HTTP_SERVER_VARS in /www/usersites/m-r/mx-forums/pub/error/404.php on line 6
Site: www.mx-forums.de - New!
phpBB MODs: Click Here
phpBB MODs: Click Here
- oxpus
- Administrator
- Beiträge: 28737
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Du musst diese auch in Variablen laden.
Direkt ansprechen kannst Du die nicht.
Also u. B. $user_ip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
Direkt ansprechen kannst Du die nicht.
Also u. B. $user_ip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Verdammt ... ich bekomme es einfach nicht hin ¢¬
Kannst du dir das Script vielleicht nocheinmal ansehen:
Kannst du dir das Script vielleicht nocheinmal ansehen:
- Dateianhänge
-
- 404.zip
- (456 Bytes) 204-mal heruntergeladen
Site: www.mx-forums.de - New!
phpBB MODs: Click Here
phpBB MODs: Click Here
- Christian_N
- Beiträge: 1787
- Registriert: Sa 19.Feb, 2005 21:48
- Wohnort: Frankfurt am Main
- Kontaktdaten:
Ist voll easy
tun doch einfach
mit diesen ersetzen:
bei mir hats funktioniert - ergebnis in der Mail:
EDIT: den zum Ersetzen-Code angepasst
Gruß Chris
tun doch einfach
Code: Alles auswählen
$nachricht = "Hallo, soeben gab es einen Error 404 auf deinem Server:";
$nachricht = "URL:", $HTTP_SERVER_VARS['REQUEST_URI'];
$nachricht = "Browser:", $HTTP_SERVER_VARS['HTTP_USER_AGENT'];
$nachricht = "IP-Adresse:", $HTTP_SERVER_VARS['REMOTE_ADDR'];
$nachricht = "Hostadresse:", $HTTP_SERVER_VARS['HTTP_HOST'];
Code: Alles auswählen
$nachricht = "Hallo, soeben gab es einen Error 404 auf deinem Server: \n\n";
$nachricht .= 'URL: ' .$HTTP_SERVER_VARS['REQUEST_URI']. "\n";
$nachricht .= 'Browser: ' .$HTTP_SERVER_VARS['HTTP_USER_AGENT']. "\n";
$nachricht .= 'IP-Adresse: ' .$HTTP_SERVER_VARS['REMOTE_ADDR']. "\n";
$nachricht .= 'Hostadresse: ' .$HTTP_SERVER_VARS['HTTP_HOST']. "\n";
Code: Alles auswählen
Hallo, soeben gab es einen Error 404 auf deinem Server:
URL: /test.php
Browser: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.0.1)
Gecko/20060111 Firefox/1.5.0.1
IP-Adresse: xxx.xxx.xxx.xxx
Hostadresse: www.meinedomain.de
EDIT: den zum Ersetzen-Code angepasst
Gruß Chris
Zuletzt geändert von Christian_N am Di 28.Mär, 2006 00:13, insgesamt 5-mal geändert.
Meine Projekte: Chantals - Fanpage .::. phpBB Projekt
- oxpus
- Administrator
- Beiträge: 28737
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Absätze in Emails werden mittels
erstellt.
Also mit doppelten Hochkommas (nicht zwei einzelne!).
\n steht hier für "new line"
Code: Alles auswählen
"\n"
Also mit doppelten Hochkommas (nicht zwei einzelne!).
\n steht hier für "new line"
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
- Christian_N
- Beiträge: 1787
- Registriert: Sa 19.Feb, 2005 21:48
- Wohnort: Frankfurt am Main
- Kontaktdaten:
aua das tut weh, kurzen gehirnaussetzer stimmt ja
also müsste mein oben genannten code so lauten:
mal ausprobiere gleich
EDIT: klappt wunderbar - Danke für den Denkanstoss - hab auch gleich mal den oben genannte Ersetz-Code angepasst
also müsste mein oben genannten code so lauten:
Code: Alles auswählen
1. $nachricht = "Hallo, soeben gab es einen Error 404 auf deinem Server: \n\n";
2. $nachricht .= 'URL: ' .$HTTP_SERVER_VARS['REQUEST_URI']. "\n";
3. $nachricht .= 'Browser: ' .$HTTP_SERVER_VARS['HTTP_USER_AGENT']. "\n";
4. $nachricht .= 'IP-Adresse: ' .$HTTP_SERVER_VARS['REMOTE_ADDR']. "\n";
5. $nachricht .= 'Hostadresse: ' .$HTTP_SERVER_VARS['HTTP_HOST']. "\n";
EDIT: klappt wunderbar - Danke für den Denkanstoss - hab auch gleich mal den oben genannte Ersetz-Code angepasst
Zuletzt geändert von Christian_N am Di 28.Mär, 2006 00:12, insgesamt 2-mal geändert.
Meine Projekte: Chantals - Fanpage .::. phpBB Projekt
Ich musste noch $HTTP_SERVER_VARS durch $_SERVER ersetzen. Ich denke mal das kommt durch PHP 5.
Ein Problem habe ich allerdings noch ^^
Bei der URL würde ich gerne die aufgerufene URL haben und nicht die wo das Script liegt. Deshalb habe ich die Zeile durch diese ersetzt:
Nun kommt allerdings die Fehlermeldung:
Aber laut php.net müsste das die richtige Variable sein und in der PHP Info funktioniert es auch.
Ein Problem habe ich allerdings noch ^^
Bei der URL würde ich gerne die aufgerufene URL haben und nicht die wo das Script liegt. Deshalb habe ich die Zeile durch diese ersetzt:
Code: Alles auswählen
$nachricht .= 'URL: ' .$_SERVER['HTTP_REFERER']. "\n";
Code: Alles auswählen
Notice: Undefined index: HTTP_REFERER in /www/usersites/m-r/mx-forums/pub/error/404.php on line 8
Site: www.mx-forums.de - New!
phpBB MODs: Click Here
phpBB MODs: Click Here
- Christian_N
- Beiträge: 1787
- Registriert: Sa 19.Feb, 2005 21:48
- Wohnort: Frankfurt am Main
- Kontaktdaten:
@blondi Du musst auch noch in den rootverzeichschniss eine Datei names .htaccess reinmachen mit folgende inhalt
Wobei die Datei 404 in dem Ordner "errors" liegen müsste dann, man kann die aber in ein andere ordner machen dann müsste "erros" angepasst werden, liegt die im Root also wo auch index.php, portal.php ist dann dann kann man das "errors/" löschen so das es dann ggf. so aussieht
Solltes schon eine Datei mit dem name .htaccess haben so füge diese oben genannte Zeile einfach mit ein in die Datei
Sobald dann eine Datei aufrufst die nicht auf dein Server ist, wie z.B. www.deinedomain.de/blablabla.php kommt die Fehlermeldung und die Mail wird verschickt, allerdings müsste du auch in der 404.php die E-Mail Adressen anpassen da sonst der Giga4000 die E-Mail erhält.
@Giga4000 da weiss ich momentan auch kein Rat bin gerad noch dabei PHP zu verstehn Aber Oxpus oder Co. hat sicher ne erklärung für dich
Code: Alles auswählen
ErrorDocument 404 /errors/404.php
Code: Alles auswählen
ErrorDocument 404 /404.php
Solltes schon eine Datei mit dem name .htaccess haben so füge diese oben genannte Zeile einfach mit ein in die Datei
Sobald dann eine Datei aufrufst die nicht auf dein Server ist, wie z.B. www.deinedomain.de/blablabla.php kommt die Fehlermeldung und die Mail wird verschickt, allerdings müsste du auch in der 404.php die E-Mail Adressen anpassen da sonst der Giga4000 die E-Mail erhält.
@Giga4000 da weiss ich momentan auch kein Rat bin gerad noch dabei PHP zu verstehn Aber Oxpus oder Co. hat sicher ne erklärung für dich
Meine Projekte: Chantals - Fanpage .::. phpBB Projekt
- oxpus
- Administrator
- Beiträge: 28737
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Zwei Dinge:
$_SERVER ist NICHT überall verfügbar und phpBB selber sperrt alle kurzen GLOBALS aus Sicherheitsgründen kategorisch aus!
Das wurde gemacht, da die beiden Varianten zwar zum Aufruf eines Scripts die gleichen Inhalte enthalten, aber getrennt voneinander bearbeitet/verändert werden können. Und das ist ebent nicht besonders sicher, bzw. eindeutig!
Daher immer die langen verwenden, also hier $HTTP_SERVER_VARS.
Und zum anderen ist, wie Christian_N schon schrieb, ein Fehlerdokument auf diese Weise sehr schnell selber eingebunden, sofern es die Webumgebung auch zulässt! Notfalls, wenn es eben nicht klappt, den Provider fragen.
Und warum wird dann das eigene Fehlerscript aufgerufen?
Weil der Webserver eine Anfrage erhält, diese auflöst, dann die gewünschte Datei lädt und einen 404-Fehler meldet, wenn diese fehlt, bzw. nicht an angegebener Stelle gefunden werden kann. Groß- und Kleinschreibung ist hierbei meistens auch wichtig!
Nun kann man die Standard-Seite des Webservers anzeigen lassen oder per .htaccess-Einstellung eben auf eine eigene Datei verzweigen.
Und die kann alles sein, was der Webserver ausführen kann.
Also neben HTML und PHP vielleicht sogar auch ASP, PL, CGI, etc...
Und diese Scripte werden dann auch ausgeführt, sprich: Verwendest Du ein PHP-Script, kannst Du, sofern es auch an phpBB angeschlsosen wird, Emails per emailer.php versenden.
Oder auch mit einem eigenen, selbst erstellten Email-Script (Was deutlich schwerer ist...).
Aber Achtung:
Sollte selbst diese Fehlerseite nicht aufrufbar sein, kann der Webserver in einer Endlosschleife landen oder andere Fehler erzeugen/anzeigen! Daher unbedingt vor der Einrichtung einer eigenen Fehlerseite auch testen, ob die wirklich verfügbar und aufrufbar ist!
$_SERVER ist NICHT überall verfügbar und phpBB selber sperrt alle kurzen GLOBALS aus Sicherheitsgründen kategorisch aus!
Das wurde gemacht, da die beiden Varianten zwar zum Aufruf eines Scripts die gleichen Inhalte enthalten, aber getrennt voneinander bearbeitet/verändert werden können. Und das ist ebent nicht besonders sicher, bzw. eindeutig!
Daher immer die langen verwenden, also hier $HTTP_SERVER_VARS.
Und zum anderen ist, wie Christian_N schon schrieb, ein Fehlerdokument auf diese Weise sehr schnell selber eingebunden, sofern es die Webumgebung auch zulässt! Notfalls, wenn es eben nicht klappt, den Provider fragen.
Und warum wird dann das eigene Fehlerscript aufgerufen?
Weil der Webserver eine Anfrage erhält, diese auflöst, dann die gewünschte Datei lädt und einen 404-Fehler meldet, wenn diese fehlt, bzw. nicht an angegebener Stelle gefunden werden kann. Groß- und Kleinschreibung ist hierbei meistens auch wichtig!
Nun kann man die Standard-Seite des Webservers anzeigen lassen oder per .htaccess-Einstellung eben auf eine eigene Datei verzweigen.
Und die kann alles sein, was der Webserver ausführen kann.
Also neben HTML und PHP vielleicht sogar auch ASP, PL, CGI, etc...
Und diese Scripte werden dann auch ausgeführt, sprich: Verwendest Du ein PHP-Script, kannst Du, sofern es auch an phpBB angeschlsosen wird, Emails per emailer.php versenden.
Oder auch mit einem eigenen, selbst erstellten Email-Script (Was deutlich schwerer ist...).
Aber Achtung:
Sollte selbst diese Fehlerseite nicht aufrufbar sein, kann der Webserver in einer Endlosschleife landen oder andere Fehler erzeugen/anzeigen! Daher unbedingt vor der Einrichtung einer eigenen Fehlerseite auch testen, ob die wirklich verfügbar und aufrufbar ist!
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Hmm ... aber wenn ich $HTTP_SERVER_VARS verwende kommt:
Code: Alles auswählen
Notice: Undefined variable: HTTP_SERVER_VARS in /www/usersites/m-r/mx-forums/pub/errors/404.php on line 8
Notice: Undefined variable: HTTP_SERVER_VARS in /www/usersites/m-r/mx-forums/pub/errors/404.php on line 9
Notice: Undefined variable: HTTP_SERVER_VARS in /www/usersites/m-r/mx-forums/pub/errors/404.php on line 10
Notice: Undefined variable: HTTP_SERVER_VARS in /www/usersites/m-r/mx-forums/pub/errors/404.php on line 11
Site: www.mx-forums.de - New!
phpBB MODs: Click Here
phpBB MODs: Click Here
- oxpus
- Administrator
- Beiträge: 28737
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Öhm, du bindest die 404.php nicht ins phpBB ein, denke ich mnal?
Dann füge mal diese Zeile in die Datei ein (also direkt nach "<?"!):
Dann füge mal diese Zeile in die Datei ein (also direkt nach "<?"!):
Code: Alles auswählen
error_reporting (E_ERROR | E_WARNING | E_PARSE);
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
[quote="oxpus - Di 28.März, 2006 19:36";p="56833"]Öhm, du bindest die 404.php nicht ins phpBB ein, denke ich mnal?[/quote]
Ja, ist richtig !!!
[quote="oxpus - Di 28.März, 2006 19:36";p="56833"]
Dann füge mal diese Zeile in die Datei ein (also direkt nach "<?"!):[/quote]
Ja, habe ich gemacht. Die Fehlermeldung ist nun verschwunden, allerdings kommen die Mails folgendermaßen an:
Das aktuelle Script habe ich dir nocheinmal angehängt:
Ja, ist richtig !!!
[quote="oxpus - Di 28.März, 2006 19:36";p="56833"]
Dann füge mal diese Zeile in die Datei ein (also direkt nach "<?"!):
Code: Alles auswählen
error_reporting (E_ERROR | E_WARNING | E_PARSE);
Ja, habe ich gemacht. Die Fehlermeldung ist nun verschwunden, allerdings kommen die Mails folgendermaßen an:
Code: Alles auswählen
Hallo, soeben gab es einen Error 404 auf deinem Server:
URL:
Browser:
IP-Adresse:
Hostadresse:
- Dateianhänge
-
- 404.zip
- (493 Bytes) 201-mal heruntergeladen
Site: www.mx-forums.de - New!
phpBB MODs: Click Here
phpBB MODs: Click Here
- oxpus
- Administrator
- Beiträge: 28737
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Hm, das Script ist soweit i.O., aber komisch, daß die GLOBALS nicht verfügbar sind...
Das kann nur am Webserver oder den PHP-Einstellungen liegen.
Hast Du mal einen Link zur phpinfo?
Das kann nur am Webserver oder den PHP-Einstellungen liegen.
Hast Du mal einen Link zur phpinfo?
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
- Christian_N
- Beiträge: 1787
- Registriert: Sa 19.Feb, 2005 21:48
- Wohnort: Frankfurt am Main
- Kontaktdaten:
@Oxpus - Beitrag #10 hatte er mal ein Link angegeben zur der PHP Info
EDIT: ist das mit den Server wirklich so underschiedlich?
Den hatte das selbe Script also auch ohne in phpBB eingebunden auch drauf gehabt beim all-inkl.com (SharedServer) und da ging es, ohne diese änderrung nach "<?php" und da kam bei mir keine Fehlermeldung und wurde auch richtig in der Mail alles angezeigt.
EDIT: ist das mit den Server wirklich so underschiedlich?
Den hatte das selbe Script also auch ohne in phpBB eingebunden auch drauf gehabt beim all-inkl.com (SharedServer) und da ging es, ohne diese änderrung
Code: Alles auswählen
error_reporting (E_ERROR | E_WARNING | E_PARSE);
Zuletzt geändert von Christian_N am Di 28.Mär, 2006 23:14, insgesamt 1-mal geändert.
Meine Projekte: Chantals - Fanpage .::. phpBB Projekt
- oxpus
- Administrator
- Beiträge: 28737
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Die langen sind nicht möglich, überhaupt nicht.register_long_arrays Off
Daher verwundert es mich nun, daß $_SERVER auch nicht gehen sollte.
Versuche es aber mal damit, die Fehlermeldung in Post #10 basiert ja auf einen falschen Index, also Wertvergleich...
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
- Christian_N
- Beiträge: 1787
- Registriert: Sa 19.Feb, 2005 21:48
- Wohnort: Frankfurt am Main
- Kontaktdaten:
Dann heißt das dass auch bei jemande wo dieses auf "Off" steht garkein phpBB benutzen kann (zumindeste nicht fehlerfrei), weil phpBB aus sicherheitsgründe die lange verwendet?
Weshalb schalte den paar anbieter solche funktionen ab überhaupt gerad wenn die lange sicherer sein sollen? *kopfkratzt*
Weshalb schalte den paar anbieter solche funktionen ab überhaupt gerad wenn die lange sicherer sein sollen? *kopfkratzt*
Meine Projekte: Chantals - Fanpage .::. phpBB Projekt
Ach das sind diesen dummen Freehoster. Ich werde das Script jetzt erstmal bis zum Sommer draußen lassen. Im Juni oder Juli wollte ich mir richtigen Webspace kaufen. Ich denke mal, dass ich dann das Script Fehlerfrei einsetzten kann.
Danke an alle die mir geholfen haben
Danke an alle die mir geholfen haben
Site: www.mx-forums.de - New!
phpBB MODs: Click Here
phpBB MODs: Click Here