Aprenda a configurar o PHP no servidor Nginx

Passo a passo para configurar o PHP no Nginx e rodar seus arquivos PHP corretamente.

Como configurar o PHP no Nginx

O Nginx é um servidor web leve e de alto desempenho amplamente utilizado para hospedar aplicações PHP. Diferente do Apache, ele não processa PHP diretamente, sendo necessário configurar o PHP-FPM (FastCGI Process Manager) para lidar com os arquivos PHP.

Passo 1: Instalando o Nginx e o PHP-FPM

Se você ainda não tem o Nginx e o PHP instalados, faça isso com os seguintes comandos:

No Ubuntu/Debian:

sudo apt update
sudo apt install nginx php-fpm -y

No CentOS:

sudo yum install epel-release -y
sudo yum install nginx php-fpm -y

Após a instalação, inicie os serviços:

sudo systemctl start nginx
sudo systemctl start php-fpm

E os habilite para iniciar automaticamente:

sudo systemctl enable nginx
sudo systemctl enable php-fpm

Passo 2: Configurando o Nginx para rodar PHP

Agora, edite o arquivo de configuração do Nginx:

sudo nano /etc/nginx/sites-available/default

Encontre a seção server {} e adicione ou modifique as seguintes linhas:

server {
    listen 80;
    server_name localhost;
    root /var/www/html;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

Após isso, reinicie o Nginx e o PHP-FPM para aplicar as mudanças:

sudo systemctl restart nginx
sudo systemctl restart php-fpm

Passo 3: Testando a Configuração

Crie um arquivo PHP de teste:

sudo nano /var/www/html/info.php

Adicione o seguinte código:

<?php
phpinfo();
?>

Agora, abra o navegador e acesse:

http://localhost/info.php

Se tudo estiver correto, a página mostrará detalhes da instalação do PHP.

O Nginx tem se tornado uma alternativa popular ao Apache devido ao seu alto desempenho e menor consumo de recursos. Por não processar PHP diretamente, ele depende do PHP-FPM para lidar com scripts dinâmicos, o que proporciona uma melhor separação de responsabilidades e maior eficiência. Com uma configuração otimizada, o Nginx pode lidar com um grande número de requisições simultâneas, tornando-se a escolha ideal para aplicações que exigem escalabilidade e alto tráfego. Saber configurar PHP no Nginx é uma habilidade essencial para desenvolvedores que desejam trabalhar com servidores modernos e eficientes.

Algumas aplicações:

  • Hospedagem de sites e sistemas web de alto desempenho
  • Execução de aplicações PHP escaláveis
  • Servidores que precisam lidar com grande volume de tráfego
  • Integração com bancos de dados e APIs RESTful

Dicas para quem está começando

  • Use sudo systemctl status nginx para verificar se o Nginx está rodando corretamente.
  • Coloque seus arquivos PHP dentro da pasta /var/www/html para testá-los.
  • Verifique se o PHP-FPM está instalado e configurado corretamente para processar os arquivos PHP.
  • Se o Nginx exibir erros 502, cheque se o PHP-FPM está rodando corretamente com sudo systemctl status php-fpm.
  • Reinicie o Nginx sempre que modificar configurações em /etc/nginx/sites-available/default.

Contribuições de Rafael Nogueira

Compartilhe este tutorial: Como configurar o PHP no Nginx

Compartilhe este tutorial

Continue aprendendo:

Como configurar o PHP no Apache

Passo a passo para configurar o PHP no Apache e rodar seus arquivos PHP corretamente.

Tutorial anterior

O que é o arquivo php.ini e como configurá-lo

O php.ini é o arquivo principal de configuração do PHP, onde são definidas diversas opções de funcionamento da linguagem.

Próximo tutorial