O PHP 8.1 está disponível para o Ubuntu 22.04 LTS Jammy Jellyfish e você não precisa usar PPA de terceiros para instalar o PHP 8.1 no Ubuntu. Neste tutorial, vamos ver como instalar o Nginx, MariaDB e PHP 8.1-FPM (LEMP stack) no Ubuntu 22.04 LTS Jammy Jellyfish. Porém, para garantir maior estabilidade, sempre utilize versões LTS do Ubuntu. Neste momento, a versão mais recente é o Ubuntu 22.04 que foi oficialmente lançado.
Passo 1: Atualizar o Ubuntu 22.04 LTS Jammy Jellyfish para instalar o LEMP Stack
Para começar o nosso guia de instalação do LEMP stack é preciso atualizar o sistema. Sim, pode parecer bobagem, mas é importante que todo o software do Ubuntu esteja atualizado.
sudo apt update
sudo apt upgrade
Passo 2: Instalando o Nginx Web Server
Nginx é um servidor web de alto desempenho. Ele também pode ser usado como um Proxy reverso. Digite o comando abaixo para instalar o Nginx Web server no Ubuntu 22.04 LTS Jammy Jellyfish.
sudo apt install nginx
Após instalar o Nginx, precisamos ativar o Nginx para iniciar automaticamente quando o Ubuntu for inicializado executando o seguinte comando:
sudo systemctl status nginx
Em seguida, inicie o Nginx com este comando:
sudo systemctl start nginx
Agora verifique seu status:
systemctl status nginx
Passo 3: Instalando o MariaDB no Ubuntu
Agora neste passo, vamos finalmente instalar o MariaDB. MariaDB é um excelente alternativa ao MySQL. Ele é desenvolvido por ex-membros da equipe do MySQL que se preocupam com a possibilidade de que a Oracle possa transformar o MySQL em um produto de código fechado.
Muitas distribuições Linux (Arch Linux, Fedora etc), empresas e organizações (Google, Wikipedia) migraram para MariaDB. Então vamos instalar o MariaDB em vez do MySQL no Ubuntu 22.04 LTS Jammy Jellyfish.
sudo apt install mariadb-server mariadb-client
Após instalar o MariaDB, o servidor MariaDB deve ser iniciado automaticamente. Use systemctl para verificar seu status:
systemctl status mysql
Se não estiver em execução, inicie-o com este comando:
sudo systemctl start mysql
Execute o comando abaixo para fazer com que o MariaDB inicie automaticamente quando o Ubuntu for reinicializado:
sudo systemctl enable mysql
Agora execute o script de segurança pós-instalação:
sudo mysql_secure_installation
Quando pedir para você digitar a senha root do MariaDB, apenas pressione enter porque você ainda não definiu a senha do root. Em seguida, digite y para definir a senha de root para o servidor MariaDB.
Em seguida, basta pressionar Enter para responder a todas as perguntas restantes. Isso removerá o usuário anônimo, desativará o login de root remoto e removerá o banco de dados de teste. Esta etapa é um requisito básico para a segurança do banco de dados MariaDB.
Caso precise, você também pode seguir o nosso tutorial para criar novos usuários no MySQL ou MariaDB no Linux e também conceder ou remover permissões para cada usuário.
Passo 4: Instalando o PHP 8.1 no Ubuntu 22.04 LTS Jammy Jellyfish
Digite o seguinte comando para instalar o PHP 8.1 e as extensões do PHP 8.1 no Ubuntu 22.04 LTS Jammy Jellyfish:
sudo apt install php8.1-fpm php8.1-mbstring php8.1-xml php8.1-mysql php8.1-common
As extensões PHP são comumente necessárias para sistemas de gerenciamento de conteúdo (CMS) como o WordPress. Por exemplo, se a sua instalação não tiver php8.1-xml, algumas das suas páginas do site do WordPress podem estar em branco e você pode encontrar um erro no registro de erros do Nginx, como:
PHP message: PHP Fatal error: Uncaught Error: Call to undefined function xml_parser_create()
A instalação dessas extensões PHP garante que seu CMS seja executado sem problemas.
Agora vamos iniciar o php8.1-fpm, para isso, execute o comando abaixo:
sudo systemctl start php8.1-fpm
Vamos agora verificar status:
systemctl status php8.1-fpm
Criando um arquivo de bloqueio de servidor padrão do Nginx
Remova o link simbólico padrão no diretório habilitado para sites.
sudo rm /etc/nginx/sites-enabled/default
Em seguida, crie um novo arquivo padrão no diretório /etc/nginx/conf.d/:
sudo nano /etc/nginx/conf.d/default.conf
Cole o seguinte texto para o arquivo. Substitua o IP 12.13.14.15 pelo o seu IP do servidor real:
server {
listen 80;
listen [::]:80;
server_name 12.13.14.15;
root /usr/share/nginx/html/;
index index.php index.html index.htm index.nginx-debian.html;
location / {
try_files $uri $uri/ =404;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
include snippets/fastcgi-php.conf;
}
location ~ /\.ht {
deny all;
}
}
Salve e feche o arquivo. Em seguida, teste a configuração do nginx e recarregue-a:
sudo nginx -t
sudo systemctl reload nginx
Pronto! Você instalou com êxito Nginx, MariaDB e PHP8.1 (LEMP stack) no Ubuntu 22.04 LTS Jammy Jellyfish.