Por que o nginx não conhece o PHP no os X e começa a baixá-lo?

1

Eu instalei o nginx, php-fpm e php56 em OS X EL CAPITAN . Eu usei o comando ps para verificar se o nginx e o fpm estão em execução ou não.

Eu adicionei o bloco de código abaixo em server block em nginX:

location ~ \.php$ {
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                fastcgi_param  SCRIPT_FILENAME        $document_root$fastcgi_script_name;
                include fastcgi_params;
        }

nginX escuta em 8080 e fpm em 9000 . Eu usei o comando lsof para verificar se:

php-fpm   22903   root    0u  IPv4 0x5a9bc9209264e227      0t0  TCP 127.0.0.1:9000 (LISTEN)
php-fpm   22904     fc    0u  IPv4 0x5a9bc9209264e227      0t0  TCP 127.0.0.1:9000 (LISTEN)
nginx     22931     fc    6u  IPv4 0x5a9bc9208c304cc7      0t0  TCP *:8080 (LISTEN)
nginx     22932     fc    6u  IPv4 0x5a9bc9208c304cc7      0t0  TCP *:8080 (LISTEN)

Alguma pista sobre o problema porque o nginx faz o download de arquivos php em vez de interpretá-los?

EDIT1:
Configuração completa do nginX:

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       8080;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }

        location ~ \.php$ {
            root           /usr/local/var/www/;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi_params;
        }
    }
    include servers/*;

O URL que obtive é: http://localhost:8080/info.php

Alguém tem alguma pista sobre esse problema? Fiz todas as perguntas em stackoverflow sem sucesso:

http://serverfault.com/questions/563285/nginx-with-php-fpm-downloading-php-files-rather-than-executing-them-on-mac-os-x?rq=1

http://serverfault.com/questions/412079/nginx-php-fpm-php-file-not-found-cant-figure-out-why?rq=1
    
por ALH 07.10.2016 / 19:22

1 resposta

0

Acabei de alterar a linha abaixo:

fastcgi_param SCRIPT_FILENAME $scripts$fastcgi_script_name;

PARA:

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

Funciona agora.

    
por 08.10.2016 / 13:25