Estamos executando o PHP 5.2.5 em um servidor IIS 7 e estamos tendo problemas para tornar os erros do PHP visíveis ... No momento em que ocorre um erro de PHP, o servidor envia um erro de 500 com a mensagem "A página não pode ser exibido porque ocorreu um erro interno do servidor. "
Essa pode ser uma boa configuração para sites de produção, mas é bastante irritante em um servidor de desenvolvimento ... ;-)
Eu tentei configurar php.ini
para exibir erros na tela, bem como registrá-los em uma pasta específica, mas parece que o servidor captura todos os erros antes e evita e manipula pelo PHP ...
Alguém sabe o que precisamos fazer para que o IIS exiba erros de PHP na tela? Quaisquer links, dicas ou tutoriais sobre o assunto serão apreciados!
log_errors=1
,error_reporting=-1
,log_errors_max_len=0
.ini_set("display_errors", "on");
adicione estas linhas no arquivo php.Respostas:
Apenas para verificar, você tem o registro definido como
error_reporting = E_ALL
edisplay_errors = On
no seuphp.ini
? Normalmente, isso é suficiente para exibir esses erros no IIS 7.Em seguida, dê uma olhada nas configurações do IIS, pois elas podem ser definidas para mostrar apenas mensagens de erro localmente. No editor de configuração do IIS 7, isso está em system.webServer-> httpErrors. Você precisará alterar errorMode para Detalhado de DetalhadoLocalOnly. Obviamente, isso agora significa que qualquer pessoa que navegue no site poderá ver o erro.
Como alternativa, se você deseja mantê-los locais, pode usar a Área de Trabalho Remota para efetuar login no servidor e executar o aplicativo a partir daí, se puder.
fonte
system.webServer
com meu sangue e adicione uma nota: "Sim, existe uma combinação".Só queria acrescentar que "existingResponse" deve ser definido como "PassThrough". Não recebi nenhuma mensagem de erro real sem essa configuração adicional.
fonte
Você pode fazer isso facilmente usando a GUI do Gerenciador do IIS. Selecione seu site e clique duas vezes em Páginas de erro. Em seguida, clique em 'Editar configurações de recursos ...' e selecione a opção 'erros detalhados' em vez dos 'erros detalhados padrão para solicitações locais e páginas de erro personalizadas para solicitações remotas'. Voilà, simples assim!
fonte
Eu tive que ir para as configurações no servidor da web em configuração php e há uma configuração para o relatório de erros e está definida para produção por padrão. Tive que mudar para desenvolvimento mesmo depois de alterar o php.ini e a sugestão aqui. Estou usando o iis 7.5 no 2008 R2.
fonte