$f = file("var/log/apache2/error.log");
if (!$f) {
exit("Impossible de trouver le fichier demandé\n");
}
while(list($key,$val) = each($f))
{
$val = trim($val);
$exp = explode("\n",$val);
$geterror = explode("File does not exist:",$exp[0]);
if (count('pdf',$geterror[1])>1 || count('jpg',$geterror[1])>1 ......) {
mail ('ruddy','putain! j'ai pas fais mon boulot',$geterror[1].' est en 404');
}
}
//envoi mail page erreur
function mail_erreur($type){
$email_admin = "";
$monsite = "" ; // utile si vous administrez plusieurs sites
$message_titre = "[Erreur 404 " . $monsite . "] $type" ;
$message_corps = "Erreur 404 sur le site " . $monsite . ".\r\n" .
"Une page demandee n a pas ete trouvee. \r\n" .
"Url de la page : " . $_SERVER['REQUEST_URI'] . "\r\n" .
"Url de provenance : " . $_SERVER['HTTP_REFERER'] . "\r\n" .
"IP du visiteur : " . $_SERVER['REMOTE_ADDR'] . "\r\n" .
"Navigateur : " . $_SERVER['HTTP_USER_AGENT'] . "\r\n" .
"Heure de la requete : " . date('d/m/Y G:i:s') . "\r\n" ."\r\n" ."\r\n" .
"Contenu brut du tableau global $_SERVER : " . print_r($_SERVER,true) ;
// Envoi du message
mail($email_admin, $message_titre, $message_corps,'','');
}
// envoi d'un message si la page demandee est un fichier html ou php
if (strpos($_SERVER['REQUEST_URI'], '.html') !== false ||
strpos($_SERVER['REQUEST_URI'], '.php') !== false)){
mail_erreur('');
}
j'ai pas compris (dsl)Julia41 a dit:Ouais enfin si tu te prends un scan... Tu vas bouffer
Si jamais tu souhaites recevoir un mail à chaque erreur 404, en cas de scan de ton site tu vas en recevoir beaucoup.rudddy a dit:j'ai pas compris (dsl)Julia41 a dit:Ouais enfin si tu te prends un scan... Tu vas bouffer
cd /var/log/apache2/
cat *.log | grep " 404 "
#!/bin/bash
cat /var/log/apache2/error.log | grep " 404 "
if [ "$?" = "" ]
then
echo "pas de 404"
else
echo "404 detectee" | mailx -s "page : $?" tonmail@domail.tld
fi