É possível enviar um email automático que inclua detalhes sobre a página solicitada ao webmaster quando um visitante acessar uma página de erro de 500 servidores internos?
Dessa forma, o webmaster poderia agir mais rapidamente para resolver o problema. Esta é uma pergunta geral, de modo que plataforma usada é irrelevante.
email
error-reporting
http-code-500
Tony Bolero
fonte
fonte
Respostas:
Sim é possivel. Você só precisa verificar se o servidor Web é IIS ou Apache e pode configurá-lo para mostrar uma página personalizada (que conterá o código para capturar os detalhes que você deseja do usuário e enviar por e-mail para você) sempre que houver 500 erro encontrado.
Para o Apache, por exemplo, é realmente simples. Simplesmente crie (ou adicione, se houver) a
.htaccess
e use a regra a seguir para configurar seu documento de erro personalizado:fonte
O envio de um e-mail com todos os erros, por meio de uma página de erro personalizada, pode não funcionar se o problema estiver relacionado ao PHP: sua página personalizada também pode não ser executada, portanto o e-mail não sai. Você também receberá um e-mail por erro, o que pode ser uma inundação.
Em vez disso, sugiro implementar alguma forma de verificação de log: faça com que um trabalho cron (ou tarefa agendada no Windows) verifique os arquivos de log todos os dias ou a cada poucas horas e envie um resumo de qualquer coisa encontrada desde a última verificação ao administrador relevante (s) Você também pode fazer com que seu script de verificação de log faça algumas outras coisas, como garantir que o serviço do servidor da Web (e quaisquer serviços de banco de dados e assim por diante) esteja sendo executado, mesmo que seja apenas por uma questão de paranóia. Se nada mais, um e-mail por período de relatório pode abranger outros códigos de erro HTTP (401, 404, ...) e outras coisas encontradas nos logs. Se você fizer isso, sempre envie a mensagem de e-mail, mesmo que nada esteja errado : assim você saberá se o script de verificação falhou ao executar porque você para de receber mensagens (caso contrário, nenhuma mensagem pode significar que tudo está bem ou a máquina de relatório de danos está danificada).
fonte
Sim, envie um email para cada erro. Também é uma boa ideia enviar o máximo de informações possível como parte do email. Pense em pegar:
Isso ajuda muito para fins de depuração. É trivial obter essas informações no ASP e ASP.NET clássicos por meio dos objetos Request e Session.
Apenas não tenha um erro na sua página de erro personalizada, ou você vai surtar no servidor da web.
fonte
Sim, muito possível. Exceto o e-mail, você também pode verificar o log do servidor da Web.
Eu sugiro que não envie e-mail a cada 500, caso contrário, se houver um erro, sua caixa de correio será inundada. Basta gravar o ID do erro, enviar 1 para o mesmo erro no mesmo ID.
fonte
Você pode adicionar um iframe que carrega um php de outro servidor; sua página de erro sempre envia e-mails.
fonte