[PHP] Fehler ausgabe

BadByte

Lt. Junior Grade
Registriert
Jan. 2006
Beiträge
298
hi
so, vielleicht erinnern sich ein paar, diesen Thread gabs schon mal mit ähnlichem Problem, ich wollte ihn aber nicht nochmal ausgraben...

das Prbolem ist, dass meine PHP interpreter, wenn er einen Fehler schmeisst, einfach eine leere Seite ausgiebt, also nicht, so wie es sich gehört mit Fehler, und Zeile, sondern einfach "nix".....

so, nachdem ich eewig rummprobiert habe, hab ich mal beim support von meinem webhoster nachgefragt, und die haben mir geantwortet, dass display_errors autmatisch, aus "Sicherheitsgründen" wie es heißt deaktiviert ist, und es ist mir bei einem Webserver nicht gestattet, display_errors einen anderen Wert zuzuweisen...

so jetzt zu meiner Frage:
Stimmt das?`ist das echt eine Sicherheitlücke, PHP fehler auszugeben`?
und kann man die Fehlermeldung vielleicht nicht doch in eine Datei/Datenbank schreiben...bzw. giebt es auf dem Apache webserver eine log Datei in die die Fehlermeldungen gespeichert werden?

vielleicht giebts es auch eine programierbare Lösung mit try und wenn es nicht geht, dass dann die Fehlermeldung ausgegeben wird.....mit echo....


clemix
 
es ist in sofern ein sicherheitsrisiko, weil es einem potentiellen angreifer unter umständen hinweise gibt, wo das system angreifbar ist. ich finde das aber auch so ganz gut, im web die dinger abzustellen, schließlich möchte man seine besucher doch nicht mit so dinger quälen. beim entwicklen müssen sie natürlich an sein. aber du testest die doch nicht direkt auf deinem webserver, oder?
 
doch, das ist hauptsächlich eine Testumgebung, außerdem, sind die Scripte gar nicht für die Öffentlichkeit zugänglich(außer jemand kennt das Verzeichnisssystem)

und wenn mir da ein Fehler gleich ins Gesicht spring (weil ich z.B. aus versehen eine falsche Tabelle in der Datenbank gelöscht hab) dann ist das viel komfortabler, als wenn er einfach nix ausgiebt...
außerdem kann es doch meinem Provider völlig egal sein, ob man meine scripte unterwandern kann oder nicht, ich kann ja auch selber die Fehlermeldungen "abschalten"....
 
Kannst am anfang der Datei error_repoarting(E_ALL); schreiben.
Dann sollten alle Fehler, Warnungen, etc ausgegeben werden.

Grüße

tewes
 
doch, das ist hauptsächlich eine Testumgebung

wieso benutzt du eine online testumgebung? wie unkomfortabel gehts denn? ;)
Dann musst du die Dateien ja bei jeder noch so kleinen änderung erst hochladen und dann testen und... wieso der aufwand? wieso keine lokale testumgebung?
 
weil ich viel zu faul bin mir einen apache einzurichten (ja, ich gebs zu ich arbeite zur zeit unter Windoofs)
außerdem is das eine Frage die mich auch so interresiert...

@ tewes: das hab ich schon probiert, hat nüx gebracht... ;(
 
PHP unter Apache ist inzwischen auch kein Problem mehr.
seit php5 kann es sich selbst auf dem Apache einrichten.

mfg Backslash
 
BadByte schrieb:
... außerdem kann es doch meinem Provider völlig egal sein, ob man meine scripte unterwandern kann oder nicht, ich kann ja auch selber die Fehlermeldungen "abschalten"....


Hallo BadByte,

da unterliegst Du aber einem schweren Denkfehler. Durch fehlerhafte Scripte kann der gesamte Server kompromittiert werden und Dein Provider tut gut daran, die Fehlerausgaben nicht öffentlich zu machen. Zum Entwickeln solltest Du dir wirklich entweder wie bereits angesprochen XAMPP unter Windows installieren, oder eben, sofern die Scripte auf eine Linux/Unix-Umgebung angewiesen sind, eine Linuxdistribution in einer virtuellen Maschine installieren. Shared Hosting Angebote sind nun wirklich eine schlechte Entwicklungsumgebung und sicher nicht dafür gedacht. Die Fehlermeldungen werden übrigens normalerweise vom Apache in der error_log mitgeloggt.

Ciao
 
Wenn keinerlei Ausgabe erfolgt, wurde irgendwo ein ob_start() gesetzt ... finde das und kommentiere es aus.
 
ok das mit dem XAMPP, funktioniert sehr gut, danke bin überzeugt... :-)

die error_log hab ich leider net gefunden....was jetzt auch net mehr so schlimm is


@ Adagio: nein ob_start() hab ich nier verwendet....




danke euch allen : clemix
 
Zuletzt bearbeitet:
Zurück
Oben