A razão pela qual isso acontece é mais provável que "configurações do PHP passadas com php_value ou php_flag sobrescreverão seu valor anterior", como descrito documentação do PHP-FPM .
Eu assumo que na sua configuração do PHP display_errors
está desativado. Em seguida, você visita a página .net, na qual seu phpinfo()
confirma que está desativado.
Em seguida, você visita a página .com e o Nginx passa display_errors=1
para o seu funcionário do PHP-FPM no mesmo pool. Isso substitui o valor anterior de 0
pelo novo valor 1
. Você pode confirmar isso com phpinfo()
.
Agora as configurações do pool PHP-FPM estão definidas para display_errors=1
.
Quando você visita a página .net novamente, phpinfo()
confirma que display_errors=1
foi sobrescrito quando Nginx passou o valor de 1
para o mesmo pool que agora lida com outro de seus sites.
A solução é mover o desenvolvimento para outro servidor, conforme sugerido nos comentários. Ou para criar um pool PHP-FPM dedicado para o seu site, que é o mínimo que você deve fazer.
Bônus:
E, por favor, não faça isso na configuração do Nginx: fastcgi_param PHP_VALUE "display_errors=1";
Isso deve estar no arquivo de configuração do php, preferencialmente na própria configuração do pool fpm do site.
But we have a lot of websites on our server, and both solutions mean a lot of routine work to set up. I was wondering if there is an easier way.
Você pode usar o prefixo por pool para uma correção rápida. Em qualquer caso, colocar vários sites em um único pool de trabalho é uma má ideia, porque eu preciso apenas que um de seus sites execute um script php malicioso para comprometer TODOS os outros sites que usam o mesmo worker, sem nenhum esforço. / p>