Imagem de um homem segurando celular com com versão mobile do mesmo website que está vendo em um computador sobre a mesa
Unsplash/qimg

Para quem é desenvolvedor web, ter um servidor local rodando na sua máquina é uma mão na roda na hora de testar os seus projetos. No Fedora, existe um jeito simples de instalar um servidor LAMP (Linux + Apache + MariaDB + PHP) e rodar o WordPress como se estivesse acessando da web — dá até pra instalar plugins direto do painel de administração no navegador.

Passo 1: Instale os pacotes necessários para o servidor colando o código abaixo no Terminal. Você precisará de permissões de administrador para prosseguir.

sudo dnf install @"Web Server" wordpress php-mysqlnd mariadb-server -y

O comando acima instala os servidores web (Apache) e de banco de dados (MariaDB) na sua máquina. Agora é preciso ativar e habilitar os mesmos para rodar durante o boot do sistema.

sudo systemctl enable httpd.service mariadb.service
sudo systemctl start httpd.service mariadb.service

Se tudo correu bem, neste momento você já pode ver a página padrão do seu servidor local rodando no endereço http://locahost, htt://127.0.0.1 ou seu IP na rede local — este último é possível de ser acessado de qualquer outra máquina conectada na mesma rede.

Captura de tela mostrando a página inicial do servidor Apache do navegador Página de teste do Apache (Imagem: Reprodução)

Passo 2: Para usar o servidor de banco de dados MariaDB, você precisa criar uma senha para o usuário de administração root. É importante que você não esqueça esta senha — também não use a senha de root do Fedora, por questões de segurança.

sudo mysqladmin -u root password

Passo 3: Com o comando abaixo, você cria um novo banco de dados (chamado aqui de _dbdomeusite, mas você pode escolher o nome que quiser). Você precisará da senha de usuário root que criou acima.

sudo mysqladmin create dbdomeusite -u root -p

Mas é necessário criar uma senha para o banco de dados também, já que o PHP requisita das credenciais para rodá-lo. Use o cliente mysql padrão para isso com o seguinte comando.

sudo mysql -D mysql -u root -p

Um prompt será aberto. Use os comandos abaixo, um por vez, para criar a senha — não esqueça de editar os trechos meuuserdodb e minhasenhadodb para a os valores que preferir.

GRANT ALL PRIVILEGES ON dbdomeusite.* TO 'meuuserdodb'@'localhost' IDENTIFIED BY 'minhasenhadodb';
FLUSH PRIVILEGES;
QUIT;

Passo 4: Configure o módulo de segurança SELinux para liberar o servidor web e permitir que ele rode sem conflitos.

sudo setsebool -P httpd_can_network_connect_db=1
sudo setsebool -P httpd_can_sendmail=1

Então edite o arquivo de configuração do servidor Apache para habilitar as conexões.

sudo gedit /etc/httpd/conf.d/wordpress.conf

Procure a linha Require local e mude para Require all granted. Salve e feche o aquivo.

De volta ao Terminal, configure o firewall do sistema para permitir o tráfego na porta 80 (HTTP).

sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --reload

Passo 5: Agora é hora de configurar o WordPress para ler o banco de dados. Se você já fez isso antes ao instalar o WP em um hosting online, o procedimento é o mesmo.

Abra o arquivo de configuração da instalação padrão do WordPress.

sudo gedit /usr/share/wordpress/wp-config.php

Captura de tela mostrando o arquivo de configuração de banco de dados do WordPress Arquivo wp-config.php (Imagem: Reprodução)

Edite as informações de banco de dados, usuário e senha que você criou durante esta instalação e então reinicie o servidor para que as mudanças surtam efeito.

systemctl restart httpd

Passo 6: No navegador, abra o endereço da página inicial do seu site local no endereço http://localhost/wordpress ou http://127.0.0.1/wordpress. Se tudo deu certo, você deve ser redirecionado com a página padrão de instalação e configuração de usuário e senha do WordPress.

Captura de tela mostrando página de criação de usuário do WordPress Página de configuração inicial do WordPress (Imagem: Reprodução)

Configure o nome do site, usuário, senha e um endereço de e-mail.

Pronto! O WordPress está instalado com sucesso e rodando no seu seu servidor local.

Captura de tela mostrando página de administração do WordPress Painel inicial do WordPress (Imagem: Reprodução)

Criado novos sites no servidor local

Se você seguiu todos os passos acima, a instalação do WordPress ficou no diretório /usr/share/wordpress, mas esta não é a pasta padrão do servidor web, que no Fedora fica em /var/www/html. É lá que você deve criar novos sites ou instalações paralelas do WP.

Abra o Terminal e dê permissões de escrita e execução para esta pasta e subpastas com o comando abaixo.

sudo chmod 777 /var/www/html -R

Acesse este diretório com o gerenciador de arquivos do Fedora.

nautilus /var/www/html

Para iniciar a instalação de um novo site, crie uma pasta (exemplo: meunovosite) dentro deste diretório. Baixe o WordPress e descompacte nesta nova pasta. A instalação do WordPress, exatamente como no Passo 6, pode ser acessada no navegador através do endereço http://localhost/meunovosite.

Não esqueça de antes criar um banco de dados, como mostrado no Passo 3, e configurá-lo no arquivo wp-config.php.

Importando banco de dados

Se você já tem um site pronto no WordPress, mas quer importá-lo para trabalhar localmente com edição de temas e plugins, por exemplo, será preciso também importar o banco de dados. Isso é possível com o phpMyAdmin. Instale-o com o comando abaixo no Terminal e reinicie o servidor.

sudo dnf install phpmyadmin -y
sudo systemctl restart httpd

No navegador, abra o endereço http://localhost/phpmyadmin/. Uma tela de login será aberta. Use root como usuário e a senha que você criou no começo deste tutorial.

Depois de logar, é hora de criar um novo banco de dados limpo. Vá na aba Base de Dados, cole o nome do baco de dados .sql que você quer importar no espaço abaixo da opção Criar base de dados e clique no botão Criar.

Uma nova página será aberta, já dentro do novo banco de dados. Escolha a aba Importar no topo da página e siga os passos. Se tudo ocorrer bem, todas as tabelas do banco serão importadas.

Ao configurar o arquivo wp-config.php do site que você pretende importar, use root como DB_USER; e a mesma senha usada para acessar o phpMyAdmin em DB_PASSWORD.

Corrigindo erros no WordPress

Uma instalação limpa do WordPress, com um banco de dados novo, deve funcionar sem problemas. No entanto, você pode encarar algumas dores de cabeça com links personalizados em bancos de dados importados.

Para resolver isso, abra o Terminal e cole o comando abaixo.

sudo gedit /etc/httpd/conf/httpd.conf

Uma janela do editor de texto Gedit será aberta. Procure por AllowOverride controls what directives may be placed in .htaccess files. Logo abaixo, você encontrará uma linha AllowOverride None. Edite-a para AllowOverride All, salve o arquivo, feche a janela e reinicie o servidor Apache.

sudo systemctl restart httpd

Instalar e atualizar plugins também pode não ser fácil, mas existe um jeito simples de contornar isso: Na pasta da sua instalação do WordPress, abra o aquivo wp-config.php com o Gedit ou seu editor de textos favorito. Depois da última linha, cole o código abaixo, salve e feche o arquivo.

define('FS_METHOD','direct');

Acessando de outros dispositivos na rede

Ainda no arquivo wp-config.php, adicione o seguinte código.

define('WP_HOME','http://192.168.1.10/meunovosite/');
define('WP_SITEURL','http://192.168.1.10/meunovosite/');

Isso vai garantir que o seu site seja acessado através do navegador por todos os dispositivos — como tablets, smartphones e outros computadores — dentro da rede em que você está conectado. É importante, claro, modificar o endereço para o IP que você está conectado no momento, além do diretório do site. Caso você se conecte à outra rede ou seu roteador aloque um novo endereço local para seu computador, edite este valor novamente.