Tutorial
Como instalar o Linux, o Nginx, o MySQL e a pilha PHP (LEMP) no CentOS 8 [Início rápido]
Introdução
Neste guia, você instalará uma pilha LEMP em um servidor do CentOS 8. Embora o MySQL esteja disponível nos repositórios padrão do CentOS 8, este guia irá guiá-lo pelo processo de configuração de uma pilha LEMP com o MariaDB como o sistema de gerenciamento de banco de dados.
Para obter uma versão mais detalhada deste tutorial, com mais explicações de cada passo, consulte o tutorial sobre Como instalar o Linux, o Nginx, o MySQL e a pilha PHP (LEMP) no CentOS 8.
Pré-requisitos
Para seguir este guia, você precisará ter acesso a um servidor CentOS 8 como um usuário sudo
.
Passo 1 — Instalar o Nginx
Instale o pacote nginx
com:
- sudo dnf install nginx
Após a instalação terminar, execute o seguinte comando para habilitar e iniciar o servidor:
- sudo systemctl start nginx
Se o firewalld
estiver ativo, você precisará executar o seguinte comando para permitir o acesso externo na porta 80
(HTTP):
- sudo firewall-cmd --permanent --add-service=http
Recarregue a configuração do firewall para que as alterações entrem em vigor:
- sudo firewall-cmd --reload
Com a nova regra de firewall adicionada, você poderá testar se o servidor está em funcionamento, acessando o endereço IP público do seu servidor ou nome de domínio do seu navegador Web. Você verá uma página como esta:
Passo 2 — Instalar o MariaDB
Agora, vamos instalar o MariaDB, uma bifurcação - desenvolvida pela comunidade - do servidor MySQL original da Oracle. Para instalar esse software, execute:
- sudo dnf install mariadb-server
Quando a instalação terminar, habilite e inicie o servidor MariaDB com:
- sudo systemctl start mariadb
Para melhorar a segurança do seu servidor de banco de dados, é recomendável que execute um script de segurança que vem pré-instalado com o MariaDB. Inicie o script interativo com:
- sudo mysql_secure_installation
O primeiro prompt pedirá que digite a senha da root do banco de dados atual. Como você instalou o MariaDB e ainda não fez nenhuma alteração de configuração, essa senha estará em branco. Dessa forma, pressione apenas ENTER
no prompt.
O próximo prompt pergunta a você se deseja configurar uma senha root do banco de dados. Como o MariaDB usa um método especial de autenticação para o usuário root, o que, normalmente, é mais seguro do que usar uma senha, você não precisa definir isso agora. Digite N
e, em seguida, pressione ENTER
.
A partir daí, pressione Y
e, depois, ENTER
para aceitar as configurações padrão para todas as perguntas subsequentes.
Passo 3 — Instalar o PHP-FPM
Para instalar os pacotes php-fpm
e php-mysql
, execute:
- sudo dnf install php-fpm php-mysqlnd
Quando a instalação terminar, você precisará editar o arquivo /etc/php-fpm.d/www.conf
para ajustar algumas configurações. Vamos instalar o nano
para facilitar a edição desses arquivos:
- sudo dnf install nano
Agora, abra o arquivo de configuração /etc/php-fpm.d/www.conf
usando o nano
ou o editor de sua escolha:
- sudo nano /etc/php-fpm.d/www.conf
Procure pelas diretivas de user
e group
. Se estiver usando o nano
, você pode pressionar CTRL
+W
para pesquisar por esses termos dentro do arquivo aberto. Certifique-se de alterar ambos os valores de apache
para nginx
:
…
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
…
Salve e feche o arquivo quando terminar de editar.
Para habilitar e iniciar o serviço php-fpm
, execute:
- sudo systemctl start php-fpm
Por fim, reinicie o servidor Web Nginx para que ele carregue os arquivos de configuração criados pela instalação do php-fpm
:
- sudo systemctl restart nginx
Passo 4 — Testar o PHP com o Nginx
No CentOS 8, a instalação padrão do php-fpm
cria automaticamente arquivos de configuração que permitirão que seu servidor Web Nginx gerencie os arquivos .php
no diretório base padrão, localizado em /usr/share/nginx/html
. Você não precisará fazer nenhuma alteração na configuração do Nginx para que o PHP funcione corretamente dentro do seu servidor Web.
Só precisaremos modificar o proprietário e o grupo padrão no diretório base do Nginx, de modo que você possa criar e modificar arquivos naquele local usando seu usuário de sistema não raiz regular:
- sudo chown -R sammy.sammy /usr/share/nginx/html/
Crie um arquivo PHP chamado info.php
no diretório /usr/share/nginx/html
:
- nano /usr/share/nginx/html/info.php
O código PHP a seguir exibirá informações sobre o ambiente PHP atual em execução no servidor:
<?php
phpinfo();
Copie esse conteúdo para seu arquivo info.php
e não se esqueça de salvá-lo quando tiver terminado.
Agora, podemos testar se nosso servidor Web consegue exibir corretamente o conteúdo gerado por um script PHP. Vá até seu navegador e acesse o nome do host ou endereço IP do seu servidor, seguido por /info.php
:
http://server_host_or_IP/info.php
Você verá uma página parecida com esta:
Tutoriais relacionados
Aqui estão os links para os guias mais detalhados relacionados a este tutorial: