ErrorDocument 401 error.php?401ErrorDocument 403 error.php?403ErrorDocument 404 error.php?404ErrorDocument 500 error.php?500ErrorDocument 503 error.php?503DirectoryIndex index.php manutencao.php
Montei uma pagina chamada "error.php", como seguinte o codigo:
<?$ip=$_SERVER['REMOTE_ADDR'];$Browser= $_SERVER["HTTP_USER_AGENT"];$htm_401="401.php";$htm_404="404.php";$htm_403="403.php";$htm_500="500.php";$htm_503="503.php";$mail=1; $to=meuemail@host.com'; $subject="ERRO NO WEBSITE"; if ($QUERY_STRING == '401'){$mailbody="ERRO 401 \nURL: $HTTP_REFERER \nIP DO USUARIO: $ip \nBROWSER: $Browser";header ("Location: $htm_401");}if ($QUERY_STRING == '403'){$mailbody="ERRO 403 \nURL: $HTTP_REFERER \nIP DO USUARIO: $ip \nBROWSER: $Browser";header ("Location: $htm_403");}if ($QUERY_STRING == '404'){$mailbody="ERRO: 404 \nURL: $HTTP_REFERER \nIP DO USUARIO: $ip \nBROWSER: $Browser";header ("Location: $htm_404");}if ($QUERY_STRING == '500'){$mailbody="ERRO 500 \nURL: $HTTP_REFERER \nIP DO USUARIO: $ip \nBROWSER: $Browser";header ("Location: $htm_500");}if ($QUERY_STRING == '503'){$mailbody="ERRO 503 \nURL: $HTTP_REFERER \nIP DO USUARIO: $ip \nBROWSER: $Browser";header ("Location: $htm_503");}else{print "ERRO DESCONHECIDO!";}if($mail==1){mail($to,$subject,$mailbody);}?>
O que deveria acontecer era, se o usuario acessar tal pagina, e ela nao existir, vai aparecer o famoso erro 404.
E eu receberia no meu email o seguinte conteudo:
ERRO: 404
URL: http://www.endereco-do-site.com.br/tal-pagina.htm
IP DO USUARIO: xxx.xxx.xxx.xxx
BROWSER: Opera/9.80 (X11; Linux i686; U; pt-BR) Presto/2.2.15 Version/10.00
Com isso eu ficaria sabendo onde esta a quebra de um link, o problema é q o campo "URL" sempre vem em branco.
Como posso solucionar?
No caso estou usando "$HTTP_REFERER" pq o servidor é PHP4.