introdução

o Servidor HTTP Apache é o servidor web mais amplamente utilizado no mundo. Ele fornece muitos recursos poderosos, incluindo módulos carregáveis dinamicamente, suporte de mídia robusto, e ampla integração com outros softwares populares.

neste guia, explicaremos como instalar um servidor web Apache no seu servidor Ubuntu 20.04.

pré-requisitos

Antes de iniciar este guia, deverá ter um utilizador regular, não root, com privilégios de sudo configurados no seu servidor., Além disso, terá de activar uma firewall básica para bloquear portas não essenciais. Você pode aprender como configurar uma conta de usuário regular e configurar uma firewall para o seu servidor, seguindo o nosso guia Inicial de configuração do servidor para o Ubuntu 20.04.

Quando você tem uma conta disponível, faça login como seu usuário não-root para começar.

Passo 1-Instalar o Apache

Apache está disponível nos repositórios de software predefinidos do Ubuntu, tornando possível instalá-lo usando ferramentas convencionais de gestão de pacotes.,

Vamos começar atualizando o local de índice de pacotes para refletir as mais recentes mudanças upstream:

  • sudo apt update

em Seguida, instalar o apache2 embalagem:

  • sudo apt install apache2

Após a confirmação da instalação, apt irá instalar o Apache e todas as dependências necessárias.

Passo 2-Ajustar a Firewall

Antes de testar o Apache, é necessário modificar a configuração da firewall para permitir o acesso externo às portas web predefinidas., Assumindo que seguiu as instruções nos pré-requisitos, deverá ter uma firewall UFW configurada para restringir o acesso ao seu servidor.

durante a instalação, o Apache registra-se com o UFW para fornecer alguns perfis de aplicação que podem ser usados para ativar ou desativar o acesso ao Apache através da firewall.,>

Você receberá uma lista de perfis do aplicativo:

Output
Available applications: Apache Apache Full Apache Secure OpenSSH

Conforme indicado pela saída, há três perfis disponíveis para o Apache:

  • Apache: Este perfil é aberta apenas a porta 80 (normal, não criptografada tráfego da web)
  • Apache Completo: Este perfil abre a porta 80 (normal, não criptografada tráfego da web) e a porta 443 (SSL/TLS tráfego criptografado)
  • Apache Seguro: Este perfil é aberta apenas a porta 443 (SSL/TLS tráfego criptografado)

por Isso, é recomendável que você ative o perfil mais restritivo que ainda vai permitir que o tráfego que você tiver configurado., Desde que ainda não tiver configurado o SSL para o nosso servidor ainda neste guia, vamos precisar apenas de permitir o tráfego na porta 80:

  • sudo ufw allow 'Apache'

Você pode verificar a mudança digitando:

  • sudo ufw status

A saída irá fornecer uma lista de permissão de tráfego HTTP:

Conforme indicado pela saída, o perfil foi ativado para permitir o acesso ao servidor web Apache.

Passo 3-Verificar o seu servidor Web

no final do processo de instalação, o Ubuntu 20.04 inicia o Apache. O servidor web já deve estar operacional.,

verifique com o systemd init system para se certificar de que o serviço está a ser executado escrevendo:

  • sudo systemctl status apache2

como confirmado por esta saída, o serviço começou com sucesso. No entanto, a melhor maneira de testar isso é solicitar uma página do Apache.

pode aceder à página de aterragem Apache por omissão para confirmar que o software está a correr correctamente através do seu endereço IP. Se você não sabe o endereço IP do seu servidor, você pode obtê-lo de algumas maneiras diferentes da linha de comando.,

tente escrever isto na linha de comandos do seu servidor:

  • hostname -I

irá obter de volta alguns endereços separados por espaços. Você pode tentar cada um em seu navegador web para determinar se eles funcionam.,

Outra opção é usar o Icanhazip ferramenta, que deve dar-lhe o seu endereço IP público como ler a partir de outro local na internet:

  • curl -4 icanhazip.com

Quando você tiver o seu endereço IP de servidor, digite-o na barra de endereço do navegador:

You should see the default Ubuntu 20.04 Apache web page:

This page indicates that Apache is working correctly. It also includes some basic information about important Apache files and directory locations.

Step 4 — Managing the Apache Process

Now that you have your web server up and running, let’s go over some basic management commands using systemctl.

To stop your web server, type:

  • sudo systemctl stop apache2

Para iniciar o servidor web quando está parado, tipo:

  • sudo systemctl start apache2

Para parar e, em seguida, iniciar o serviço novamente, digite:

  • sudo systemctl restart apache2

Se você está simplesmente fazendo alterações de configuração do Apache pode, muitas vezes, recarregar, sem ter de interromper as ligações., Para fazer isso, use este comando:

  • sudo systemctl reload apache2

por padrão, o Apache está configurado para iniciar automaticamente quando o servidor iniciar. Se isto não for o que deseja, desactive este comportamento escrevendo:

  • sudo systemctl disable apache2

para reactivar o serviço a iniciar no arranque, escreva:

  • sudo systemctl enable apache2

Apache deverá agora iniciar automaticamente quando o servidor reiniciar de novo.,

Passo 5-Configurar Hosts virtuais (recomendado)

ao usar o servidor web Apache, você pode usar hosts virtuais (semelhantes aos blocos do servidor em Nginx) para encapsular detalhes de configuração e host mais de um domínio de um único servidor. Vamos configurar um domínio chamado your_ Domain, mas você deve substituí-lo pelo seu próprio nome de domínio. Se você está configurando um nome de domínio com DigitalOcean, por favor consulte a nossa documentação de rede. Apache on Ubuntu 20.,04 tem um bloco de servidor ativado por padrão que é configurado para servir documentos a partir do diretório /var/www/html. Enquanto isso funciona bem para um único site, ele pode se tornar pesado se você estiver hospedando vários sites. Em vez de modificar /var/www/html, vamos criar uma estrutura de diretórios dentro de /var/www para uma your_domain site, deixando /var/www/html no lugar como o diretório padrão para ser servido, se um pedido de um cliente não corresponder a quaisquer outros sites.,

Criar o diretório para your_domain da seguinte forma:

  • sudo mkdir /var/www/your_domain

em seguida, atribuir a propriedade de diretório com o $USER variável de ambiente:

  • sudo chown -R $USER:$USER /var/www/your_domain

As permissões de seu web raízes deve ser correta, se você não tiver modificado o valor umask, o que define as permissões de arquivo padrão., Para garantir que as permissões estão correctas, e permitir que o proprietário para ler, gravar e executar arquivos enquanto a concessão de apenas ler e executar permissões para grupos e outros, você pode inserir o seguinte comando:

  • sudo chmod -R 755 /var/www/your_domain

em seguida, criar um exemplo de index.html página usando nano ou seu editor favorito:

  • sudo nano /var/www/your_domain/index.html

Dentro, adicione o seguinte exemplo de HTML:

/var/www/seu_dominio/index.html
<html> <head> <title>Welcome to Your_domain!</title> </head> <body> <h1>Success! The your_domain virtual host is working!</h1> </body></html>

gravar e fechar o ficheiro quando terminar.,

para que o Apache sirva este conteúdo, é necessário criar um arquivo host virtual com as diretivas corretas. Em vez de modificar o arquivo de configuração padrão localizado no /etc/apache2/sites-available/000-default.conf diretamente, vamos fazer um novo /etc/apache2/sites-available/your_domain.conf:

  • sudo nano /etc/apache2/sites-available/your_domain.conf

Colar o seguinte bloco de configuração, que é semelhante ao padrão, mas atualizado para o novo diretório e nome de domínio:

/etc/apache2/sites-available/seu_dominio.,conf

Notice that we’ve updated the DocumentRootto our new directory andServerAdmin to an email that the your_domain site administrator can access. Nós também adicionamos duas directivas: ServerName, que estabelece a base de domínio deve corresponder para este host virtual definição e ServerAlias, que define mais nomes que devem corresponder, como se fossem o nome de base.

Salve e feche o ficheiro quando terminar.,

Vamos ativar o arquivo com o a2ensite ferramenta:

  • sudo a2ensite your_domain.conf

Desativar o site padrão definido no 000-default.conf:

  • sudo a2dissite 000-default.conf

em seguida, vamos testar para erros de configuração:

  • sudo apache2ctl configtest

Você deve receber a seguinte saída:

Output
Syntax OK

Reinicie o Apache para implementar as alterações:

  • sudo systemctl restart apache2

o Apache deve agora ser veiculação de seu nome de domínio., Você pode testar esta navegando , onde você deve ver algo como isto:

Passo 6 – Familiarizar-se com o Importante Apache Arquivos e Diretórios

Agora que você sabe como gerenciar o serviço Apache em si, você deve tomar alguns minutos para familiarizar-se com algumas importantes diretórios e arquivos.,

Content

  • /var/www/html: o conteúdo actual da web, que por omissão consiste apenas na página Apache predefinida que viu anteriormente, é servido a partir do/var/www/html directory. Isto pode ser alterado alterando os ficheiros de configuração do Apache.

configuração do servidor

  • /etc/apache2: a pasta de configuração Apache. Todos os ficheiros de configuração do Apache residem aqui.
  • /etc/apache2/apache2.conf: o principal ficheiro de configuração Apache. Isto pode ser modificado para fazer alterações na configuração global Apache., Este arquivo é responsável por carregar muitos dos outros arquivos no diretório de configuração.
  • /etc/apache2/ports.conf: este ficheiro indica os portos onde o Apache irá ouvir. Por padrão, o Apache escuta na porta 80 e, adicionalmente, escuta na porta 443 quando um módulo que fornece capacidades SSL está ativado.
  • /etc/apache2/sites-available/: o directório onde as máquinas virtuais por local podem ser armazenadas. O Apache não irá usar os ficheiros de configuração encontrados nesta pasta, a menos que estejam ligados à pasta

    ., Tipicamente, toda a configuração de bloco do servidor é feita neste diretório, e então ativada por ligação para o outro diretório com o comando a2ensite.

  • /etc/apache2/sites-enabled/: a pasta onde estão armazenadas as máquinas virtuais por local. Tipicamente, estes são criados por ligação a arquivos de configuração encontrados no id

    diretório com o id

    . O Apache lê os ficheiros de configuração e as ligações encontradas nesta pasta quando inicia ou recarrega para compilar uma configuração completa.,

  • /etc/apache2/conf-available/ /etc/apache2/conf-enabled/: Estes directórios têm a mesma relação como o sites-available e sites-enabled diretórios, mas são usados para armazenar os fragmentos da configuração que não pertencem a um virtual host. Os ficheiros no directório conf-available podem ser activados com o comando a2enconf e desactivados com o comando a2disconf.
  • /etc/apache2/mods-available/, /etc/apache2/mods-enabled/: estas pastas contêm os módulos disponíveis e activos, respectivamente., Os ficheiros que terminam em.load contêm fragmentos para carregar módulos específicos, enquanto os ficheiros que terminam em.conf contêm a configuração desses módulos. Os módulos podem ser ativados e desativados usando o comando a2enmod e a2dismod.

registos do servidor

  • /var/log/apache2/access.log: por omissão, todos os pedidos ao seu servidor web são registados neste ficheiro de registo, a menos que o Apache esteja configurado para fazer o contrário.
  • /var/log/apache2/error.log: por omissão, todos os erros são registados neste ficheiro., The LogLevel directive in the Apache configuration specifies how much detail the error logs will contain.

Conclusão

Agora que você tem o seu web server instalado, você tem muitas opções para o tipo de conteúdo que você pode servir e tecnologias que você pode usar para criar uma experiência mais rica.

Se quiser construir uma pilha de aplicações mais completa, poderá ler este artigo sobre como configurar uma pilha de lâmpadas no Ubuntu 20. 04

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *