Como posso configurar o apache para enviar um email em cada erro HTTP 500

2

Eu tenho alguns aplicativos de servidor em execução no apache2; Ruby on Rails, PHP e outros.

Em todos os casos, gostaria que o apache me enviasse um email sempre que o apache respondesse um erro HTTP 500 Erro interno do servidor.

Como posso fazer isso?

    
por Jarl 31.08.2012 / 07:43

2 respostas

4

Você pode criar um arquivo personalizado 500. Supondo que você esteja usando o Apache, adicione a seguinte linha ao seu .htaccess

ErrorDocument 500 /errorfilename.php

Este código basicamente diz ao servidor que, se um usuário encontrar um erro 500 (erro interno do servidor), será exibida a mensagem errorfilename.php.

Neste arquivo PHP você pode adicionar código para enviar um email quando um usuário chegar ao 500.

<?php
//this is the 500 error php file
mail([email protected],500 error encountered,'message here');
?>
<html>
<head>
<title>500</title>
<body>
500 internal server error
The administrator has been notified
<a href="index.php">Go to Homepage</a>
</body>
</html>
    
por 01.09.2012 / 19:18
1

Você pode usar a diretiva ErrorDocument para entregar uma mensagem de erro personalizada e transformar esse arquivo em um script que envia o email. Como alternativa, escreva a página de erro para que ela grave um arquivo com qualquer informação desejada e configure uma tarefa cron para enviar esses arquivos para você.

    
por 31.08.2012 / 08:49