Sonntag, 19. Februar 2012

PHP-Snippet zur Kontrolle des Speicherplatzes auf dem Server

Wenn man den Server mit anderen teilt, kann es schnell passieren, dass der Speicherplatz voll ist. Es reicht, wenn ein Verein dabei ist, der für die Mitglieder mp3-Dateien, Videodateien oder unbearbeitete Digitalfotos hochlädt - und natürlich vergisst, ab und zu auszumisten. Plötzlich ist der Server voll. Das Problem habe ich früher schon beschrieben: da kommt nicht etwa eine Fehlermeldung, nein, es funktionieren lediglich ein paar Dinge nicht mehr. Ein Blogartikel wird  partout nicht abgespeichert, ein wordpress-backup scheitert aus unerfindlichen Gründen, eine Plugininstallation oder ein Update klappt nicht, und die Ursache ist nicht erkennbar.

Daher sollte im geschützten  Adminbereich eine Datei zur Ermittlung des freien Speichers abgespeichert und entsprechend inkludiert werden.

Das bisher verwendete Schnipsel habe ich jetzt überarbeitet, damit eine ordentliche Formatierung erreicht wird.

<?php
$path=basename($_SERVER["SCRIPT_NAME"]);  // Skripteigenname
$var = @diskfreespace("$path");
$kbvar=$var/1000;
$mbvar=$kbvar/1000;
$gbvar=$mbvar/1000;

echo "Freier Speicher: <br>";
echo number_format($var,0,",", ".")." Bytes = <br>";
echo number_format($kbvar,0,",",".")." kB = <br>";
echo number_format($mbvar,0,",",".")." MB = <br>";
echo number_format($gbvar,1,",",".")." GB";

$mb_schwelle = 500;
if($mbvar < $mb_schwelle) echo "Warnung! Wert von 500 MB ist unterschritten!";


?>



Man könnte  die Echo-Ausgabe weglassen (und die Daten erst im Hauptscript ausgeben; z.B. einem Administrationsscript).

Dann ließe sich diese Datei unsichtbar in eine öffentliche Seite einbinden, um einen Pseudo-Cronjob zu ermöglichen. Bei Unterschreiten einer bestimmten Größe könnte man sich per email eine Warnung zukommen lassen.

  © Blogger template 'Fly Away' by Ourblogtemplates.com 2008

Back to TOP