Como configurar o Nginx para executar o PHP

Oct 04 2020

Esta é a configuração de nginx.conf

http {
    include       mime.types;
    default_type  application/octet-stream;

    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;

        location / {
            root   /Users/*name*/PHPSITE/standard;
            index  index.html index.htm;
            try_files $uri $uri/ /index.php;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   /Users/*name*/PHPSITE/standard;
        }

        location ~ \.php$ { include /usr/local/etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index /index.php; fastcgi_param SCRIPT_FILENAME /Users/*name*/PHPSITE/standard$fastcgi_script_name;

         } 

    }

Mas quando estou executando em 127.0.0.1:9000, ele não funciona. No localhost, ele mostra 403 Forbidden. Como você pode ver, apaguei as linhas comentadas.

Respostas

1 user969068 Oct 04 2020 at 21:47

Você deve sempre usar em $document_rootvez de fornecer o caminho raiz em todos os lugares

fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;

E verifique se o seu processo php-fpm está rodando, por exemplo se você está usando systemctl run

systemctl status php-fpm
systemctl start php-fpm

também verifique se você está usando o mesmo caminho fast_cgi, ele deve corresponder a www.conf do arquivo php-fpm (pode estar aqui /etc/php-fpm.d/www.conf)

listen = 127.0.0.1:9000

e o arquivo nginx.conf de configuração do seu site

fastcgi_pass 127.0.0.1:9000;

após atualizar os arquivos, reinicie seus serviços Nginx / php-fpm.

e visite http: // localhost (como você definiu server_name acima) em seu navegador, não 127.0.0.1:9000.