Como instalar Apache + PHP + MySQL (LAMP) no Ubuntu 24
Introdução
A stack Apache + PHP + MySQL (LAMP) é uma das combinações mais tradicionais e amplamente utilizadas para hospedar aplicações web.
Com ela, você consegue servir sites dinâmicos com estabilidade e compatibilidade com a grande maioria dos sistemas web disponíveis no mercado, incluindo WordPress, Joomla e outros CMSs populares.
Neste tutorial, você aprenderá como instalar o Apache, PHP 8.2 e MySQL no Ubuntu 24 e configurar um Virtual Host para o seu domínio.
Requisitos
Antes de iniciar, você precisa ter:
- Acesso ao servidor via SSH.
- Usuário com privilégios de sudo.
- Servidor rodando Ubuntu 24 atualizado.
- Domínio apontando para o IP do servidor (recomendado).
Informações importantes
- O Apache será utilizado como servidor web.
- O PHP será executado via PHP-FPM.
- O MySQL será utilizado como banco de dados.
- O Virtual Host permite hospedar múltiplos sites no mesmo servidor.
- Certifique-se de que a porta 80 (HTTP) e porta 443 (HTTPS) estejam liberadas no firewall.
Como instalar a stack LAMP
1º Passo: Atualizar o sistema
sudo apt update && sudo apt upgrade -y
2º Passo: Instalar o Apache
sudo apt install -y apache2
Verifique se está rodando:
sudo systemctl status apache2Habilite o Apache para iniciar automaticamente com o sistema:
sudo systemctl enable apache23º Passo: Instalar o MySQL
sudo apt install -y mysql-server
Execute a configuração inicial de segurança:
sudo mysql_secure_installationDurante o processo, você será perguntado sobre:
- Configuração do plugin de validação de senha (recomendado ativar).
- Remoção de usuários anônimos (recomendado remover).
- Bloqueio de acesso remoto do root (recomendado manter bloqueado).
- Remoção do banco de dados de teste (recomendado remover).
4º Passo: Instalar o PHP e extensões
Primeiro, adicione o repositório com as versões mais recentes do PHP:
sudo add-apt-repository ppa:ondrej/php
Será necessário confirmar a adição do repositório. Após concluir, execute:
sudo apt updateInstale o PHP e suas extensões:
sudo apt install -y php8.2 php8.2-cli php8.2-mysql php8.2-zip php8.2-gd php8.2-mbstring php8.2-curl php8.2-xml php8.2-bcmath php8.2-imagick php8.2-intl php8.2-soap php8.2-redis php8.2-imap php8.2-fpm libapache2-mod-php8.2
Verifique a versão instalada:
php -v
Você pode também instalar o Certbot para criar certificados SSL gratuitos. Neste caso, execute:
sudo apt install python3-certbot-apache
Como configurar o Virtual Host
5º Passo: Criar o diretório do site
sudo mkdir -p /var/www/seudominio.com.br
Definir permissões:
sudo chown -R www-data:www-data /var/www/seudominio.com.br
⚠️ Lembre-se de alterar seudominio.com.br na criação da pasta para o nome correto de seu domínio.
6º Passo: Criar arquivo de teste
nano /var/www/seudominio.com.br/index.php
Conteúdo:
<?php phpinfo();
7º Passo: Criar configuração do Virtual Host
sudo nano /etc/apache2/sites-available/seudominio.com.br.conf
Adicione:
<VirtualHost *:80>
ServerName seudominio.com.br
ServerAlias www.seudominio.com.br
DocumentRoot /var/www/seudominio.com.br
<FilesMatch \.php$>
SetHandler "proxy:unix:/var/run/php/php8.2-fpm.sock|fcgi://localhost"
</FilesMatch>
<Directory /var/www/seudominio.com.br>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/seudominio.com.br-error.log
CustomLog ${APACHE_LOG_DIR}/seudominio.com.br-access.log combined
</VirtualHost>
⚠️ Pode ser necessário fazer algumas alterações no modelo base acima conforme o tipo de site que pretende hospedar.
8º Passo: Ativar o site e os módulos necessários
Ative o módulo rewrite do Apache (necessário para a maioria dos CMS):
sudo a2enmod rewriteAtive o Virtual Host:
sudo a2ensite seudominio.com.br.conf
Desative o site padrão do Apache (opcional, mas recomendado):
sudo a2dissite 000-default.conf
Teste a configuração:
sudo apache2ctl configtestSe o teste estiver ok, reinicie o Apache:
sudo systemctl reload apache29º Passo: Ativar o SSL do site
Após fazer o apontamento correto de seu domínio para o IP do servidor, você poderá gerar o SSL gratuito usando o comando abaixo:
certbot --apache -d seudominio.com.br -d www.seudominio.com.br
Será necessário confirmar seu e-mail, aceitar os termos e condições de uso do Let's Encrypt e algumas ações para concluir a emissão.
Ajustes de firewall (se necessário)
Lembre-se de liberar o firewall para permitir o acesso HTTP e HTTPS:
sudo ufw allow 'Apache Full'
Testar o funcionamento
Acesse no navegador:
http://seudominio.com.br
Se tudo estiver correto, a página de informações do PHP será exibida.
Informações adicionais
- O diretório padrão dos sites fica em
/var/www/. - Cada domínio deve ter seu próprio arquivo de Virtual Host em
/etc/apache2/sites-available/. - O PHP pode variar de versão (php8.2, php8.3, etc.), ajuste conforme necessário.
- Sempre valide as configurações com
apache2ctl configtestantes de reiniciar. - Para produção, recomenda-se configurar HTTPS com SSL.
- O arquivo
.htaccessexige que a diretivaAllowOverride Allesteja ativa no Virtual Host, conforme configurado neste tutorial.
Ficou com alguma dúvida? Nossa equipe está à disposição nos canais de atendimento para lhe auxiliar.
Precisa de um servidor para colocar sua stack LAMP em produção? Conheça os planos de Servidor VPS Linux da Fabweb e tenha infraestrutura estável, com suporte especializado e monitoramento inclusos.
Atualizado em: 29/04/2026
Obrigado!
