O IIS não exibe erros detalhados do PHP - mostra a falha do servidor 500

9

Estou acostumado a servir sites do Apache, mas agora sou obrigado a usar um servidor IIS.

Várias páginas do meu PHP estão retornando o erro 500 e não consigo depurar porque o IIS está suprimindo as mensagens de erro. Eu tentei ini_set('display_errors',1);no código, mas sem sucesso.

Os erros são mostrados em alguns sites, mas não aquele em particular que eu quero depurar, então não acho que seja uma configuração global do PHP, mas algo a ver com as configurações do site.

Não consigo encontrar uma resposta clara sobre como ativar os erros de exibição do PHP.

Encontrei este link, mas não sei onde encontrar " system.webServer-> httpErrors ".

Como posso ativar os erros de exibição no PHP no IIS?

Andy
fonte

Respostas:

6

Que tal registrá-los?

Edite o php.ini e defina

error_reporting = E_ALL & ~E_NOTICE
log_errors = On

E também

error_log = syslog para fazer logon no log de eventos do Windows ou

error_log = location/of/logfile para fazer logon em um arquivo.

adaptr
fonte
Eu tenho error_reporting,, log_errorse error_logtudo configurado dessa maneira, mas ainda não está registrando erros no site do Joomla. Este site foi copiado de um servidor Apache. Eu importei as .htaccessregras para o IIS 7.5; mas, infelizmente, ainda está falhando. Você, por acaso, tem alguma idéia do que mais eu posso precisar?
Mike Perrenoud
5

Supondo que você tenha todas as configurações corretas no seu arquivo php.ini

  1. Selecione seu site no Gerenciador do IIS
  2. À direita, clique duas vezes no ícone Páginas de erro
  3. À direita, em "Ações", clique no link "Editar configurações de recursos"
  4. Na pop-up exibida, escolha o botão de opção "Erros detalhados"
  5. Atualize sua página PHP para ver erros detalhados

Graças ao último comentário nesta página

AnotherLongUsername
fonte
0

Descobri que é uma boa ideia acessar uma página hospedada no IIS com o InternetExplorer para teste.

No meu caso, o php-error-logs onde limpo - não tenho idéia a partir daí.

Eu recebi um "500 - erro interno do servidor" não expressivo ao conectar com o firefox / chrome: insira a descrição da imagem aqui

... mas uma mensagem de erro mais útil ("Erro HTTP 500.0 - Erro interno do servidor C: \ PHP \ php-cgi.exe - O processo FastCGI saiu inesperadamente") ao usar o InternetExplorer: insira a descrição da imagem aqui

Talvez também tente conectar-se a partir de http: // localhost no próprio servidor.

eli
fonte