Dieser Fehler kommt wenn versucht wurde etwas durch Null zu teilen ![]()
Abhilfe: An der angegeben Position schauen, durch was geteilt wird und evnt. die Rechnung debuggen.
Dieser Fehler kommt wenn versucht wurde etwas durch Null zu teilen ![]()
Abhilfe: An der angegeben Position schauen, durch was geteilt wird und evnt. die Rechnung debuggen.
Soll von einem PHP ein header() gesetzt werden, darf vorher noch kein Text ausgegeben werden. Dies ist der Tatsache geschuldet, das alle Header (wie u.a. die Statusheader) noch vor der übergabe von HTML-Code übertragen werden müssen, damit der Browser weiß was phase ist. Wie kommt es nun der Fehler zustande? Wenn man sich die Ausgabe ansieht und dort zusätzlich zu der Fehlerausgabe noch andern Text vor der Fehlermeldung sieht so muss dieser dieser dafür verantwortlich. Steht in der Ausgabe offensichtlich nur die Fehlermeldung so wurde ein/oder mehrere Leerzeichen ausgegeben. Seit ihr euch sicher kein Leerzeichen ausgegeben zu haben so schaut mal ob der <?php Tag auch auf Postion 0/0 steht. Denn selbst ein sonst nicht störendes Leerzeichen vor dem PHP Starttag ruft diesen Fehler hervor. Required und Include Dateien nicht vergessen zu kontrollieren.
Ein Webserver sendet von Haus aus viele Informationen mit um sich zu identifizieren. Dem normalen Webseiten besucher nützen die Zusatzinformationen recht wenig. Sie werden eigentlich nur für Statistikzwecke verwendet. Eigentlich.. uneigentlich kann ein angreifer so verwundbare Systeme erkennen. So sendet der Server z.B. folgendes: “Apache/1.3.27 (Linux/SuSE) PHP/4.3.1″ Ist nun im Apache oder PHP dieser Version ein Fehler, ist es für den Angreifer einleichtes. Um es potentiellen Angreifern etwas zu erschweren kann man die mitgesanten Informationen etwas beschneiden.
Apache
In der http.conf den Eintrag “ServerToken Prod” editieren/erstellen.
Lighttpd
in der lighttpd.conf den Eintrag server.tag editieren/erstellen.
PHP
Bei PHP lässt sich die Ausgabe nur unterdrücken und leider nicht modifizuiern. Editiere/erstelle dazu in der php.ini den Eintrag expose_php und setze in auf off.
Sonstige
Nicht nur der Webserver “verrät” potentielle Sicherheitslücken, sondern auch die FTP-Software ist gesprächig:
vsFTPD
In der vsftpd.conf den Eintrag ftpd_banner editieren/erstellen.
Der Warnmeldung
tritt nur in zusammenhang mit Dateifunktionen auf wenn noch kein Filepointer exsitiert. Im Klartext: Es wurde noch keine Datei geöffnet aber es werden Funktionen aufgerufen (wie fclose, fget oder fwrite) die eine geöffnete Datei vorraussetzen
Setzt man bei einem Funktionsaufruf vor den Namen der Funktion ein @ so wird die Ausgabe von Fehlern, Warnungen und Hinweisen unterdrückt.
Damit die Nachrichten von PHP-Interpreter nicht im Nirvana verschwinden, werden bei aktivierter Funktion track_errors die Nachrichten in der Variable $php_errormsg gespeichert
Danach hatte ich gerade gesucht. Das gefundene
wollte aber nicht. Daher verwendet einfach das:
Weitere Informationen zu array_unique auf php-welt.net
Zuerst die aktuelle Version (aktuell 5.2.5) als Quelltext besorgen und entpacken:
ein
liefert viele Informationen zu Verfügbaren Extesions die mit reinkompilierung werden können (weiterlesen…)
Für das hochladen einer Datei mit PHP ist folgender Code notwendig:
Die Datei befindet sich dann im Ordner upload. Dieser Ordner muss schreibrechte haben, am besten ihr setzt in zum testen die Rechte auf 777. Am besten ihr schützt den Uploadordner via .htaccess!