Estou tentando instalar nginx
e php-fpm
após guia em um sistema FreeBSD 11.1 em um raspberrypi-B +.
Tudo se comporta conforme descrito no guia até o ponto 14, que envolve
abrindo um arquivo php
com informações sobre o sistema executando
phpinfo();
Nesse momento, quando eu abro http://localhost/info.php
, nginx
expira enquanto aguardo uma resposta de php-fpm
. A seguinte mensagem aparece no nginx
log:
[error] 876#100128: *1 upstream timed out (60: Operation timed out) while reading response header from upstream, client: 127.0.0.1, server: localhost, request: "GET /info.php HTTP/1.0", upstream: "fastcgi://127.0.0.1:9000", host: "localhost"
Em /usr/local/etc/nginx/nginx.conf
, tenho uma seção para php
files:
location ~ \.php$ {
root /usr/local/www/nginx;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_read_timeout 180;
fastcgi_param SCRIPT_FILENAME $request_filename;
include fastcgi_params;
}
e em /usr/local/etc/php-fpm.d/www.conf
tenho a linha:
listen = 127.0.0.1:9000
Por isso, verifiquei se nginx
pode se conectar a php-fpm
:
$ sudo sockstat -4 -6| grep nginx
dá
www nginx 876 3 tcp4 127.0.0.1:80 127.0.0.1:35165
www nginx 876 6 tcp4 *:80 *:*
www nginx 876 9 tcp4 127.0.0.1:60676 127.0.0.1:9000
root nginx 875 6 tcp4 *:80 *:*
onde você pode ver a conexão de entrada solicitando a página e a conexão de saída para a porta 9000 (fastcgi).
Olhando para php-fpm
com
$ sudo sockstat -4 -6| grep php-fpm
dá
www php-fpm 935 0 tcp4 127.0.0.1:9000 *:*
www php-fpm 934 0 tcp4 127.0.0.1:9000 *:*
www php-fpm 934 4 tcp4 127.0.0.1:9000 127.0.0.1:60676
root php-fpm 933 8 tcp4 127.0.0.1:9000 *:*
onde você pode ver a conexão de entrada.
Portanto, nginx
parece estar conectado a php-fpm
, mas nada acontece.
Em htop
, posso ver um processo mestre php-fpm
com dois processos filho do trabalhador, um dos quais está levando quase 100% do tempo da CPU.
Depois de um tempo, nginx
expira e o funcionário php-fpm
fica em 100%
e não libera o soquete. O arquivo de log php-fpm
( /var/log/php-fpm.log
) não mostra nenhum erro:
[24-Dec-2017 23:09:21] NOTICE: fpm is running, pid 933
[24-Dec-2017 23:09:21] NOTICE: ready to handle connections
O Pid 933 é o mestre. Nenhuma saída de log dos processos filhos.
Então é isso que eu encontrei e não tenho nenhuma ideia do que devo ver a seguir. Você tem alguma sugestão?
EDITAR
O problema parece estar relacionado ao PHP-7.1. Eu instalei uma versão mais antiga (PHP-5.6) e o problema desapareceu. Deixo a questão em aberto caso o problema esteja relacionado a alguma configuração específica do PHP-7.