Observação:

Instalar o Apache Web Server

Introdução

O Apache está em desenvolvimento desde 1993 e ao longo do tempo se tornou um dos servidores web mais populares do mundo. O servidor Web Apache é um componente-chave da pilha de software LAMP (Linux, Apache, Oracle MySQL e Perl/PHP) e continua sendo amplamente usado hoje.

O servidor Web Apache está diretamente disponível no repositório do Application Streams no Oracle Linux 8 ou posterior e é simples de implantar e configurar.

Pré-requisitos

Objetivos

Ao final deste tutorial, você poderá fazer o seguinte:

Instalando e configurando o pacote do servidor Web

  1. Instale o pacote httpd e suas dependências.

    sudo dnf install httpd
    
  2. Ative e inicie o serviço httpd.

    Esse comando ativa e inicia o serviço httpd para uso imediato e também inicia o serviço automaticamente após uma reinicialização do sistema:

    sudo systemctl enable --now httpd.service
    

    Para verificar o status do serviço, digite:

    sudo systemctl status httpd
    
  3. (Opcional) Se você estiver usando um perfil de firewall personalizado ou uma instância do Oracle Cloud Infrastructure, abra a porta do firewall para o serviço Web do Apache (80).

    Esses comandos permitem a porta do firewall do serviço Web do Apache e recarregam o serviço de firewall padrão:

    sudo firewall-cmd --add-service=http --permanent
    sudo firewall-cmd --reload
    
  4. Teste a implantação.

    Com o seu navegador da Web, vá para o nome de domínio ou endereço IP do seu sistema, por exemplo, http://myserver.example.com. O servidor Web Apache abre a página de teste padrão.

Configurando o Apache

Para alterar o caminho raiz do servidor Web, não edite o arquivo /etc/httpd/conf/httpd.conf diretamente. Em vez disso, como método preferencial, crie um arquivo de configuração específico do site no diretório /etc/httpd/conf.d.

No exemplo a seguir, o arquivo /etc/httpd/conf.d/example.com.conf é criado para conter configurações para hosts virtuais.

  1. Crie hosts virtuais adicionando as seguintes informações em /etc/httpd/conf.d/example.com.conf:

    Escute *:80

    <VirtualHost *:80>

    ServerName exemplo.com
    ServerAlias www.example.com

    DocumentRoot /var/www/example.com/html/

    ErrorLog /var/log/httpd/example.com_error.log
    CustomLog /var/log/httpd/example.com_access.log combinado

    </VirtualHost>

    ServerName e ServerAlias podem ser nomes de host, nomes de domínio ou endereços IP que podem ser usados para acessar o serviço.

  2. Crie a pasta raiz de documentos.

    A pasta raiz hospeda as páginas da Web que o Apache forneceria aos navegadores.

    sudo mkdir -p /var/www/example.com/html
    sudo echo "example.com" > /var/www/example.com/html/index.html
    sudo chown -R apache:apache /var/www/example.com/html
    

    Em sistemas nos quais o SELinux está ativado no modo de imposição, e as páginas não são fornecidas no /var/www directory, você deve aplicar o contexto de segurança correto ao diretório DocumentRoot. Por exemplo, para servir páginas Web do diretório /mnt/example.com, digite:

    sudo semanage fcontext -a -t httpd_sys_content_t "/mnt/example.com(/.*)?"
    sudo restorecon -Rv /mnt/example.com/
    
  3. Aplique sua configuração.

    sudo systemctl restart httpd
    

Protegendo o serviço Web

Como prática recomendada, proteja todas as comunicações entre um navegador Web e o servidor Apache usando HTTPS. Para uma configuração segura, um certificado TLS é necessário.

  1. Configure seus certificados TLS/SSL.

Observação:
A Oracle recomenda enfaticamente que você use um certificado TLS assinado por uma Autoridade de Certificação (CA) externa. Consulte Oracle Linux: Gerenciando Certificados e Infraestrutura de Chave Pública para obter mais informações.

  1. Instale a extensão HTTPS para o Apache.

    sudo dnf install mod_ssl
    sudo systemctl restart httpd
    
  2. Atualize a configuração do Apache. Por exemplo, em /etc/httpd/conf.d/example.com.conf, adicione a seguinte configuração:

    Escute *:443

    <VirtualHost *:443>

    ServerName exemplo.com
    ServerAlias www.example.com

    SSLEngine em SSLCertificateFile /etc/pki/tls/private/certificate.crt
    SSLCertificateKeyFile /etc/pki/tls/private/private.key

    DocumentRoot /var/www/example.com/html/

    ErrorLog /var/log/httpd/example.com_error.log
    CustomLog /var/log/httpd/example.com_access.log combinado

    </VirtualHost>

  3. Redirecione as solicitações HTTP para HTTPS.

    Substitua a configuração HTTP VirtualHost existente por um redirecionamento, da seguinte forma:

    <VirtualHost *:80>

    ServerName exemplo.com
    ServerAlias www.example.com

    Redirecionar "/" "https://example.com/"

    </VirtualHost>

  4. Reinicie o serviço Apache para carregar a nova configuração.

    sudo systemctl restart httpd
    
  5. (Opcional) Configure o firewall.

    Esses comandos habilitam a porta de firewall 443 para o serviço Apache HTTPS e recarrega o serviço de firewall padrão:

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

Mais Recursos de Aprendizagem

Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal YouTube do Oracle Learning. Além disso, visite education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.

Para obter a documentação do produto, visite o Oracle Help Center.