Pessoal, estou configurando o PHP com Nginx e ao acessar a URL, ao invés de executar o arquivo index.php ele faz download do mesmo! Alguém já passou por isso? tem alguma ideia de como resolver?
Pessoal, estou configurando o PHP com Nginx e ao acessar a URL, ao invés de executar o arquivo index.php ele faz download do mesmo! Alguém já passou por isso? tem alguma ideia de como resolver?
Opa, Bruno, tudo bem?
Isso geralmente acontece quando o Nginx não está configurado da forma certa para processar arquivos PHP através do FastCGI.
Vou deixar um exemplo abaixo de como você pode configurar o Nginx para processar arquivos PHP:
server {
listen 80;
server_name exemplo.com;
root /var/www/html;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
}
No código acima, usamos o bloco location ~ \.php$ para processar arquivos PHP. A linha fastcgi_pass é usada para definir onde o PHP FastCGI está ouvindo. No nosso caso, ele está ouvindo no soquete /run/php/php7.2-fpm.sock. E também é importante que você substitua /run/php/php7.2-fpm.sock pelo local do FastCGI no seu sistema.
Basta também substituir o exemplo.com pelo seu domínio e o /var/www/html pelo caminho do diretório onde estão os seus arquivos do PHP.
Depois de fazer essas alterações, você precisa reiniciar o Nginx para que as alterações entrem em vigor. Nisso, você pode usar o comando sudo systemctl restart nginx.
Se outra dúvida surgir, estamos disponíveis aqui.
Abraços e bons estudos!