Servidor Web com NGINX — Instalação e configuração do phpMyAdmin em sistemas baseados em RHEL

Desde que comecei a estudar sobre Desenvolvimento Web, tenho utilizado o Apache como meu servidor web padrão. Quando comecei meus estudos ele definitivamente era o servidor web mais utilizado, talvez até hoje deva ser. Porém, alternativas vão surgindo e o NGINX é mais do que uma alternativa, hoje ele dividi o mercado de servidores com o Apache e possui muitas vantagens em relação ao seu concorrente.

Foto de Arif Kemal Köroğlu no Pexels

Este artigo faz parte de uma série de artigos que visam a instalação e configuração de um Servidor Web com NGINX.

Hoje, vamos realizar a instalação e configuração do phpMyAdmin que é um client para facilitar a manutenção do banco de dados MariaDB.

Quando trabalhamos com o NGINX nos acostumamos com a terminologia “Server Block”, também conhecido no Apache como “Virtual Host”. Bem, a configuração consiste na criação de um Server Block! Simplesmente falando, estamos configurando um domínio local.

Requisitos

Para a devida configuração, tanto o PHP quanto o MariaDB (MySQL) devem estar devidamente instalados e configurados.

Instalação

No terminal, executamos o seguinte comando:

sudo dnf install phpmyadmin

Observe que o phpMyAdmin foi instalado no seguinte caminho: /usr/share/phpMyAdmin .

Após a finalização da instalação, podemos avançar para a configuração do NGINX.

Configurando o phpMyAdmin no NGINX

Neste ponto vamos criar um Server Block e definir um nome de domínio para o phpMyAdmin.

Nome de domínio: localphpmyadmin.com

Lembrando que você pode definir um nome de domínio mais adequado a sua necessidade.

Vamos criar um arquivo chamado "localphpmyadmin.conf" no diretório de configuração do NGINX. No terminal, com permissões de administrador, executamos o seguinte comando:

sudo touch /etc/nginx/conf.d/localphpmyadmin.conf

Com o arquivo devidamente criado, podemos utilizar o VS Code para editá-lo. No terminal, executamos o seguinte comando:

code /etc/nginx/conf.d/localphpmyadmin.conf

Com o arquivo aberto para edição, adicionamos o seguinte conteúdo a ele:

Fique atento aos comentários, principalmente em relação a regra que aponta para o módulo php-fpm.

Salve e feche o arquivo.

Ativando arquivo de configuração (config.inc.php)

Na instalação do phpMyAdmin é gerado um arquivo chamado config.inc.php no seguinte caminho: /etc/phpMyAdmin/ . Este arquivo é responsável pelas configurações personalizadas do phpMyAdmin. Porém, ele é ignorado devido as permissões de acesso a esse diretório. Portanto, vamos ajustar as permissões para ele ser devidamente reconhecido.

No terminal, com permissões de administrador, executamos os seguintes comandos:

sudo chmod 644 /etc/phpMyAdmin/config.inc.php
sudo chmod 755 /etc/phpMyAdmin

Definindo diretório de armazenamento temporário

Esta etapa não é essencial para o funcionamento do phpMyAdmin, porém, são ajustes que auxiliam em seu pleno funcionamento.

Para a definição do diretório temporário de armazenamento, devemos editar o arquivo config.inc.php . No terminal, executamos o seguinte comando:

code /etc/phpMyAdmin/config.inc.php

Com o arquivo aberto para edição, adicionamos a seguinte linha:

$cfg['TempDir'] = '/tmp';

Para que as configurações definidas nesse arquivo tenham efeito, precisamos reiniciar o módulo php-fpm. No terminal, com permissões de administrador, executamos o seguinte comando:

sudo systemctl restart php-fpm

Reiniciando o Servidor

No terminal, com permissões de administrador, executamos o seguinte comando:

sudo systemctl restart nginx

Configurando o domínio para responder localmente

Sempre que configuramos um novo domínio local, necessitamos direcionar sua requisição para o servidor local (nossa máquina).

Para isso, precisamos editar o arquivo "hosts". No terminal, executamos o seguinte comando:

code /etc/hosts

Agora podemos adicionar o domínio recém-criado, como se segue:

127.0.0.1   localphpmyadmin.com www.localphpmyadmin.com
::1 localphpmyadmin.com www.localphpmyadmin.com

E finalizado, agora podemos acessar o phpMyAdmin utilizando nosso novo domínio!

--

--

--

Apaixonado por Desenvolvimento Web, sempre aprendendo algo novo em PHP, Javascript, HTML e CSS. Ah…e lutando para estruturar corretamente meus bancos de dados!

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Marcelo Albuquerque

Marcelo Albuquerque

Apaixonado por Desenvolvimento Web, sempre aprendendo algo novo em PHP, Javascript, HTML e CSS. Ah…e lutando para estruturar corretamente meus bancos de dados!

More from Medium

Contact Management System In C Language

Java program for command line argument

Upgrading mysql from version 5.6 to 8.0

A web portal where to upload photos: Photobook