# Como instalar o Apache no Ubuntu

O Apache é frequentemente usado em combinação com sistemas Linux. Em particular, o Ubuntu é ideal para instalar o servidor da Web devido à sua forte comunidade e documentação. Neste guia, explicaremos passo a passo como você pode instalar e configurar o Apache no Ubuntu.

## Requisitos de sistema para o Apache no Ubuntu

[O Apache](https://www.ionos.com/pt-br/digitalguide/servidor/conhecimento/o-que-e-o-apache/) é um dos servidores da Web mais antigos e estáveis. Sua popularidade se deve à sua escalabilidade e configuração simples. Para instalar o Apache no Ubuntu 22.04, não há requisitos específicos para o processador, pois a maioria dos processadores modernos deve ser capaz de executar o Apache no Ubuntu. No entanto, você precisará de **memória RAM e memória de disco rígido suficientes**.

O Apache utiliza poucos recursos do sistema e pode ser configurado para diferentes tipos de sistemas, incluindo computadores desktop, laptops, servidores e máquinas virtuais. Se você quiser hospedar um site poderoso, talvez precise de mais recursos para garantir um desempenho suficiente. É preciso lembrar que **o uso de módulos pode aumentar os requisitos do sistema**. Por exemplo, se você quiser integrar um módulo para melhorar o desempenho do servidor Web Apache, seu sistema precisará de memória adicional para armazenamento em cache e outras otimizações.

Para [instalar o servidor da Web Apache](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/como-instalar-servidor-web-apache/ "How to install an Apache web server"), você deve ter os seguintes requisitos mínimos de sistema:

- **Memória (RAM)**: 4 Gigabytes
- **Sistema operacional**: Ubuntu, usuários com direitos de acesso sudo
- **Disco rígido**: 5 Gigabytes
- **Firewall**: para tráfego de dados http e para bloquear portas desnecessárias
- **Conexão com a Internet**: para fazer download de pacotes

---

### Dica

[A hospedagem Linux](https://www.ionos.com/hosting/linux-hosting "Linux Hosting from IONOS") da IONOS oferece suporte a uma ampla variedade de módulos Apache que permitem configurar seu próprio proxy reverso Apache de forma rápida e eficaz. Beneficie-se do desempenho flexivelmente escalável, da proteção DDOS e dos principais recursos PHP.

---

## Um guia passo a passo para instalar o Apache no Ubuntu

O Ubuntu 22.04 usa a **ferramenta de gerenciamento de pacotes APT** para instalar o Apache. Primeiro, será necessário atualizar o índice de pacotes no sistema Ubuntu para garantir que todas as dependências necessárias estejam atualizadas.

Se não estiver instalando o programa localmente, será necessário fazer login no Ubuntu Server usando SSH.

### Etapa 1: Atualizar a lista de pacotes

Abra o terminal e execute uma atualização.

```bash
$ sudo apt update
```

### Etapa 2: instalar o pacote Apache

Em seguida, você precisa instalar o pacote Apache com todas as dependências necessárias usando o comando APT “**install**”.

```bash
$ sudo apt install apache2
```

### Etapa 3: Altere as configurações do firewall

Para configurar o Apache, você precisa ativar firewalls descomplicados (UFW) no Ubuntu. Depois de instalar o Apache no Ubuntu, o Apache configurará **perfis de aplicativos** no UFW com os quais o tráfego de dados pode ser gerenciado para as portas da Web.

Você pode usar o seguinte comando para exibir a lista de perfis de aplicativos:

```bash
$ sudo ufw app list
```

Isso mostrará três perfis do Apache:

[![Imagem: Terminal Linux: Apache application profile list](https://www.ionos.com/pt-br/digitalguide/fileadmin/_processed_/f/5/csm_apache-profile_456597b02d.webp "Terminal Linux: Apache application profile list")](https://www.ionos.com/pt-br/digitalguide/fileadmin/DigitalGuide/Screenshots_2023/apache-profile.png) Terminal: Lista de perfis de aplicativos do Apache - **Apache**: abre a porta TCP 80 para HTTP (conexão não criptografada)
- **Apache Full**: abre a porta TCP 80 (HTTP, não criptografado) e 443 (HTTPS, com TLS/SSL criptografado)
- **Apache Secure**: abre somente a porta HTTPS 443 para uma conexão criptografada

Como ainda não configuramos o SSL, só podemos abrir a porta 80.

```bash
$ sudo ufw allow 'Apache'
```

Usando o comando “status”, você pode verificar se as configurações corretas estão em vigor.

```bash
$ sudo ufw status
```

### Etapa 4: testar o status do Apache

Use o gerenciador de sistema “**systemd**” para verificar se o serviço Apache está ativo.

```bash
$ sudo systemctl status apache2
```

### Etapa 5: abra a página padrão do Apache

Digite seu endereço IP na barra de endereços do navegador para acessar a página padrão do Apache. Se você não souber seu endereço IP, poderá exibi-lo usando “hostname”.

```bash
$ hostname -I
```

Você também pode usar a ferramenta icanhazip.

```bash
$ curl -4 icanhazip.com
```

Agora você pode abrir a página padrão do Apache em seu navegador e inserir seu endereço IP em vez de “**server\_ip**”.

```none
http://server_ip
```

Aqui está um trecho da página padrão sobre o Ubuntu:

[![Imagem: Navegador da Web: Página padrão do Apache no Ubuntu](https://www.ionos.com/pt-br/digitalguide/fileadmin/_processed_/d/8/csm_apache-default-page_bd09fa9d55.webp "Navegador da Web: Página padrão do Apache no Ubuntu")](https://www.ionos.com/pt-br/digitalguide/fileadmin/DigitalGuide/Screenshots_2023/apache-default-page.png) Navegador da Web: Página padrão do Apache no Ubuntu ### Etapa 6: Gerenciar o daemon do Apache

Você pode gerenciar o daemon ou serviço do servidor da Web Apache com “systemctl”.

Iniciando o servidor da Web Apache:

```bash
$ sudo systemctl start apache2
```

Parando o servidor da Web Apache:

```bash
$ sudo systemctl stop apache2
```

Parar e reiniciar o servidor da Web Apache:

```bash
$ sudo systemctl restart apache2
```

Restartando o Apache e recarregando a configuração:

```bash
$ sudo systemctl reload apache2
```

Se você instalar o Apache no Ubuntu, o servidor da Web será iniciado automaticamente após a configuração durante a inicialização. Você também pode desativar esse recurso usando o seguinte comando:

```bash
$ sudo systemctl disable apache2
```

Para reativar o início automático do Apache durante a inicialização, você pode digitar o seguinte comando:

```bash
$ sudo systemctl enable apache2
```

### Etapa 7: usar hosts virtuais

O Apache geralmente hospeda documentos em */var/www/html*. Se quiser usar mais domínios em um servidor, você pode usar hosts virtuais. Neste exemplo, configuraremos uma estrutura de diretório para seu próprio domínio em */var/www/*.

```bash
$ sudo mkdir /var/www/your_domain
```

Substitua “**seu\_domínio**” por seu próprio domínio.

Você pode atribuir a propriedade do diretório com a variável ambiental *$USER*:

```bash
$ sudo chown -R $USER:$USER /var/www/your_domain
```

Você também pode atribuir especificamente direitos de leitura, gravação e execução no modo Oktal:

```bash
$ sudo chmod -R 755 /var/www/your_domain
```

### Etapa 8: criar uma página de teste

Defina uma *index.html* como a página padrão de seu domínio. Para fazer isso, você pode usar o editor de texto **nano**, por exemplo.

```bash
$ sudo nano /var/www/your_domain/index.html
```

Selecione uma formulação e adicione-a ao arquivo HTML:

```html
<html>
    <head>
        <title>Welcome to your_domain!</title>
    </head>
    <body>
        <h1>Here you can see that your_domain virtual host is successfully working!</h1>
    <div class="hash d-none" hidden>hash_cc0d4ee34e77ccbcb20f781e750ba59fdd7e8aab</div><script data-shy-copy-guard>(function(){var C=[0x00AD,0x200B,0x200C,0x200D,0x2060,0xFEFF];var s=function(t){for(var i=0;i<C.length;i++){t=t.split(String.fromCharCode(C[i])).join("");}return t;};document.addEventListener("copy",function(e){var sel=document.getSelection();if(!sel||sel.isCollapsed||!e.clipboardData){return;}e.clipboardData.setData("text/plain",s(sel.toString()));try{var d=document.createElement("div");d.appendChild(sel.getRangeAt(0).cloneContents());e.clipboardData.setData("text/html",s(d.innerHTML));}catch(x){}e.preventDefault();});})();</script></body>
</html>
```

### Etapa 9: Definir o arquivo de configuração para hosts virtuais

Para exibir a página de exemplo, é necessário configurar corretamente o Apache para o seu domínio. Crie **seu próprio arquivo de configuração para seu domínio** e deixe o arquivo de configuração padrão do Apache como está.

```bash
$ /etc/apache2/sites-available/your_domain.conf
```

Adicione o seguinte bloco e substitua “**your\_domain**” pelo nome de seu domínio. Você também pode inserir o endereço de e-mail de um administrador ao lado de “ServerAdmin”:

```none
<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName your_domain
    ServerAlias www.your_domain
    DocumentRoot /var/www/your_domain
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
```

Ative o arquivo de configuração com o comando “a2ensite”:

```bash
$ sudo a2ensite your_domain.conf
```

Desative a página padrão antiga:

```bash
$ sudo a2dissite 000-default.conf
```

Teste sua configuração quanto a erros:

```bash
$ sudo apache2ctl configtest
```

Se tudo estiver correto, você poderá reiniciar o Apache:

```bash
$ sudo systemctl restart apache2
```

Vá para sua página padrão:

```none
http://your_domain
```

Agora você deve conseguir ver sua página de exemplo:

[![Imagem: Navegador da Web: Página de exemplo para um host virtual](https://www.ionos.com/pt-br/digitalguide/fileadmin/_processed_/8/c/csm_virtual-host_1a711f5b40.webp "Navegador da Web: Página de exemplo para um host virtual")](https://www.ionos.com/pt-br/digitalguide/fileadmin/DigitalGuide/Screenshots_2023/virtual-host.png) Web browser: Página de exemplo de um host virtual ### Etapa 10: Arquivos e diretórios importantes do Apache

Para operar com eficiência o servidor da Web Apache, é útil conhecer alguns arquivos e diretórios comumente usados:

- **/var/www/html**: esse é o diretório no qual o Apache geralmente armazena documentos. Isso pode ser alterado no arquivo de configuração.
- **/etc/apache2**: é onde todos os arquivos de configuração do Apache são armazenados.
- **/etc/apache2/apache2.conf**: esse é o arquivo de configuração principal com o qual você pode alterar a configuração global.
- **/etc/apache2/ports.conf**: esse arquivo contém as portas abertas. Normalmente, são a porta 80 e/ou a porta 443.
- **/etc/apache2/sites-available/**: essa pasta contém os hosts virtuais que você está usando. Os arquivos de configuração armazenados aqui devem ser vinculados ao diretório com “site-enabled” para funcionar.
- **/etc/apache2/conf-available/, /etc/apache2/conf-enabled/**: Esses diretórios salvam outros arquivos de configuração que não pertencem a hosts virtuais. Você pode ativá-los com “a2enconf” e desativá-los usando “a2disconf”.
- **/etc/apache2/mods-available/**, **/etc/apache2/mods-enabled/**: Os módulos disponíveis e ativados são armazenados nesses diretórios. Você pode ativar um módulo usando “a2enmod” e desativá-lo com “a2dismod”.
- **/var/log/apache2/access.log**: esse arquivo de log registra todas as solicitações ao servidor da Web.
- **/var/log/apache2/error.log**: esse arquivo registra todas as mensagens de erro. As informações de LogLevel descrevem a gravidade.


This is a markdown version of: [https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/instalar-o-apache-no-ubuntu/](https://www.ionos.com/pt-br/digitalguide/servidor/configuracao/instalar-o-apache-no-ubuntu/) for AI/LLM consumption.