Publicado em 14/06/2024
LinuxApacheLAMPMySQLPHPProgramaçãoEi, Dev! Blz? Hoje, vamos configurar juntos a mais famosa stack de desenvolvimento Web, que pode até parecer complicada, mas incrivelmente fácil: como instalar o LAMP no seu Ubuntu.
O LAMP nada mais é do que junção das tecnologias Linux, Apache, MySQL e PHP, tão necessários para aplicações como WordPress. Para configurar seu ambiente, tudo que precisará é de um ambiente Ubuntu 22.04 (ou uma de suas flavours oficiais, como Lubuntu ou Mate) ou superior, seu terminal favorito e uma caneca de café.
Pronto? Então bora!
Como Instalar o LAMP
Primeiro vamos entender melhor cada uma das camadas envolvidas no ambiente que vamos criar.
Linux (Sistema Operacional): É a base que vamos utilizar para instalar as demais camadas. Conhecido por sua estabilidade, segurança e flexibilidade, o Linux é amplamente utilizado em servidores de produção, o que facilita o deploy da sua aplicação caso esteja utilizando um sistema similar.
Apache (Servidor Web): Um dos servidores web mais populares e amplamente utilizados do mundo. O Apache é responsável por receber solicitações de clientes da web e entregar páginas da web correspondentes.
MySQL (Banco de Dados): Um sistema de gerenciamento de banco de dados relacional de código aberto. O MySQL é projetado para armazenar, gerenciar e recuperar dados de forma eficiente e confiável.
PHP (Hypertext Preprocessor): Uma linguagem de programação de servidor amplamente usada para desenvolvimento web. Sua dinamicidade e amplitude de recursos fez com que diversos frameworks fossem criados com base nesta linguagem, como o Magento, Laravel e o nosso querido WordPress.
Passo a Passo para Instalar o LAMP
Agora que você já entendeu cada camada por trás do LAMP, vamos iniciar o processo de instalação. Então arregace as mangas, abra seu terminal e mão no código.
Instalando o Apache
Inicie verificando se os seus pacotes de ambiente estão atualizados com o seguinte comando:
sudo apt update
Em seguida, instale o Apache:
sudo apt install apache2 -y
Após instalar o Apache, verifique se o serviço está ativo.
sudo service apache2 status
Agora que o serviço está ativo, vamos nos certificar que o firewall da sua máquina está permitindo a comunicação do Apache, através do seguinte comando:
sudo ufw app list
Caso não esteja aparecendo na lista “Apache Full”, basta executar o seguinte comando:
sudo ufw app info "Apache Full"
Se estiver tudo certo, você poderá verificar a página de sucesso da configuração do apache acessando no seu navegador localhost (ou 127.0.0.1).
Esta página está localizada na pasta local do seu servidor, em /var/www/html
, onde ficarão os arquivos dos seus projetos e sites.
Instalando o MySQL e criando seu primeiro banco de dados
Para instalar o servidor de banco de dados MySQL, basta executar o seguinte comando:
sudo apt install mysql-server -y
Se tudo estiver correto, o status do servidor de banco de dados aparecerá como ativo ao executar o comando:
sudo service mysql status
Caso queira, você pode criar um banco de dados para teste utilizando o seguinte comando:
mysql -uroot -e "CREATE DATABASE teste; SHOW DATABASES;"
Lembrando que você precisará estar logado como adminstrador para executar este comando, para isso utilize `sudo su` antes de executá-lo.
Instalando o PHP
Chegamos a última parte da configuração da nossa stack de desenvolvimento web, a instalação do PHP. Cada projeto pode exigir uma versão diferente da linguagem, mas aqui vamos focar sempre na mais recente. Juntamente com o PHP, vamos instalar as bibliotécas de comunição com o banco e servidor web, para isso utilize o seguinte comando:
sudo apt install php libapache2-mod-php php-mysql -y
Agora que instalamos o PHP, vamos indicar nas configurações do nosso servidor Apache qual arquivo tem prioridade de leitura, no caso, vamos priorizar o PHP, editando o arquivo `dir.conf`:
sudo nano /etc/apache2/mods-enabled/dir.conf
Após abrir o arquivo, adicione o `index.php` como prioridade de leitura:
Utilize `ctrl + x` depois `y + Enter` para salvar o arquivo. Feita a troca de prioridade de leitura, você pode também instalar algumas bibliotécas complementares (e opicionais), que irão auxiliar no desenvolvimento dos seus projetos com frameworks como WordPress. Para isso, basta fazer a instalação dos pacotes a seguir:
sudo apt install php-cli php-tidy php-curl php-xml -y
Agora precisamos reiniciar o servidor para que ele assuma as novas configuraçoes:
sudo service apache2 restart
Vamos verificar se as configurações do PHP e do seu servidor local estão corretas, mas antes disso, apenas para maior comodidade e flexibilidade no desenvolvimento local, vamos alterar as permissões dos arquivos de forma que possa criar novos projetos sem restrições, utilizando o comando a seguir:
sudo chmod -Rv 777 /var/www/html
Lembrando que esse nível de permissionamento não é recomendado em servidores de produção, apenas em máquinas locais para fins de teste e desenvolvimento.
Agora para verificarmos se está tudo funcionando corretamente, vamos criar um arquivo de teste em nosso servidor local, com o seguinte comando:
sudo echo "<?php phpinfo();" > /var/www/html/index.php
Agora basta acessar novamente o nosso `localhost` no navegador, e se estiver tudo certo, você verá todas as informações do PHP rodando em seu ambiente local:
Se você chegou nessa tela, parabéns! Você configurou com sucesso seu ambiente LAMP de desenvolvimento! Agora está tudo pronto para você iniciar seus projetos.
Uma forma mais simples de fazer as coisas
Agora que você configurou na mão o seu LAMP, quero te apresentar uma forma mais simples de fazer tudo isso. Você pode instalar o LAMP com apenas o seguinte comando:
sudo apt install lamp-server^ -y
Claro que se você já configurou seu ambiente, não precisa executar esse comando. Mas antes de me xingar nos comentários (rs), é importante que você tenha conhecimento de cada camada da sua stack de desenvolvimento. Por isso recomendo a instalação por etapas, para que você tenha controle e conhecimento de cada parte do seu ambiente, de forma que, no momento que enfrentar um erro, você tenha ao menos uma idéia de por onde começar a debugar.
Alternativas ao LAMP
Claro, o LAMP não é a única opção. Se você estiver no Windows, você pode configurar um WAMP (com o XAMP, por exemplo) ou um MAMP, caso esteja no macOS. Existem até mesmo soluções baseadas em contêineres com o Docker, que facilita muito a vida quando se trata de separação de ambientes. Claro que cada stack tem suas vantagens e desvantagens, principalmente quando o ambiente de desenvolvimento é muito diferente do ambiente de produção, mas com as configurações corretas, você consegue ter um desenvolvimento e deploys tranquilos.
E ai Dev, deu certo ? (lá ele, rs) Conta aí nos comentários.