O objetivo deste post é descrever os procedimentos de instalação e configuração do Nginx e PHP 8 beta4 que foi lançado em 17 de Setembro de 2020.
Ressaltando que por ser versão beta, não é recomendado utilizar em ambiente de produção, apenas em ambiente local, ok?
Instalação do servidor web Nginx
$ sudo apt install nginx
Instalação das dependências necessárias
$ sudo apt install -y wget gcc pkg-config libxml2-dev sqlite3 libsqlite3-dev zlib1g libz-dev
Download do PHP 8.0 beta4
$ wget -c https://downloads.php.net/~pollita/php-8.0.0beta4.tar.xz -o-
Extração do PHP 8.0 beta4 que foi feito o download
$ tar -Jxxvf php-8.0.0beta4.tar.xz && mv php-8.0.0beta4.tar.xz php-8
Acessar o diretório extraído
$ cd php-8
Habilitaro FPM e PDO MySQL no PHP
$ ./configure --enable-fpm --with-pdo-mysql
Compilação e instalação
$ make && sudo make install
Renomear o arquivo php.ini-development para php.ini
$ sudo cp php.ini-development /usr/local/php/php.ini
$ sudo vim /usr/local/php/php.ini
/cgi.fix
retira o ; na linha correspondente cgi.fix_pathinfo e deixe conforme abaixo
cgi.fix_pathinfo=0
ESC +:x (salvar e sair do editor vim)
$ sudo /usr/local/etc/php-fpm.d/www.conf.default /usr/local/etc/php-fmp.d/www.conf
$ sudo cp sapi/fpm/php-fpm /usr/local/bin
$ sudo cp sapi/fpm/php-fpm.conf /usr/local/etc/php-fpm.conf
$ sudo vim /usr/local/etc/php-fmp.d/www.conf
Alterar o usuário e grupo nas linhas correspondentes a user e group para www-data que é o usuário e grupo do servidor na distro Debian e derivados.
ESC +:x
$ sudo vim /usr/local/etc/php-fpm.conf
Adicionar no final do arquivo
include=/usr/local/etc/php-fpm.d/*.conf
Reload das configurações feitas
$ sudo /usr/local/bin/php-fpm
$ sudo vim /etc/nginx/sites-available/default
Adicionar index.php antes de index.html em index
Ajustar também as configurações feitas anteriormente no PHP FPM
location ~\.php$ {
include fastcgi_params;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_pass 127.0.0.1:9000;
}
ESC + :x (salvar e sair do editor vim)
$ sudo service nginx restart
Como o ambiente PHP 8 beta4 está em ambiente local e para ter permissão de escrita no DocumentRoot default do servidor web Nginx, então pode atribuir permissão ao seu usuário regular no /var/www/html
$ sudo chown -R $USER:USER /var/www/html
$ sudo vim /var/www/html/info.php
<?php
phpinfo();
Salva o arquivo e acessa no browser http://localhost/info.php
Feito!