DEV Community

Cover image for Hospedando seu site estático no Amazon S3 🚀
Carlos Henrique
Carlos Henrique

Posted on

Hospedando seu site estático no Amazon S3 🚀

Muitas vezes, precisamos hospedar um site simples, seja para um portfólio, uma landing page ou um projeto estático. Em vez de investir em servidores complexos, o Amazon S3 oferece uma solução prática e de baixo custo para essa necessidade. Com poucos passos, podemos configurar um bucket no S3 para servir um site estático acessível via internet.

Neste tutorial, vou explorar com vocês o processo de configuração passo a passo.

O que Ă© o Amazon S3?

O Amazon S3 (Simple Storage Service) é um serviço de armazenamento de objetos na nuvem oferecido pela AWS. Ele permite armazenar e recuperar qualquer quantidade de dados a qualquer momento, garantindo alta durabilidade, disponibilidade e escalabilidade. O S3 é amplamente utilizado para armazenar backups, distribuir conteúdo e hospedar sites estáticos de maneira simples e eficiente.

O S3 armazena dados em buckets, que funcionam como "pastas" na nuvem. Cada bucket pode conter arquivos individuais (objetos), como imagens, documentos e páginas web. Ao ativar a hospedagem estática, o S3 passa a servir esses arquivos diretamente pela internet, sem necessidade de servidores tradicionais.

Vantagens e Desvantagens do Amazon S3

âś… Vantagens:

  • Baixo Custo: VocĂŞ paga apenas pelo armazenamento e transferĂŞncia de dados, sem custos fixos.

  • Alta Disponibilidade: Infraestrutura robusta da AWS garante acesso confiável ao site.

  • Escalabilidade: Capaz de lidar com um grande nĂşmero de acessos sem a necessidade de configurar servidores adicionais.

  • Fácil Configuração: Em poucos passos, seu site pode estar no ar sem necessidade de servidores web.

  • Integração com Outras Ferramentas AWS: Como CloudFront para CDN e Route 53 para domĂ­nios personalizados.

❌ Desvantagens:

  • Sem Suporte para Aplicações Dinâmicas: O S3 Ă© adequado apenas para sites estáticos (HTML, CSS, JavaScript puro).

  • Gerenciamento de Permissões: É necessário configurar corretamente as permissões para garantir acesso pĂşblico ao site.

  • URL PadrĂŁo Pouco Amigável: O link gerado pelo S3 pode ser longo e complexo, sendo necessário um domĂ­nio personalizado para melhorar a experiĂŞncia do usuário.

  • Sem HTTPS Nativo: Para ter HTTPS, Ă© necessário configurar o Amazon CloudFront ou outro serviço de CDN.

Passo 1: Criando um Bucket no S3

  1. Acesse o AWS Management Console.

  2. Vá para o serviço S3.

  3. Clique em Criar bucket.
    Criar bucket

  4. Escolha um nome Ăşnico para o bucket (ex:meusite-exemplo).
    Nome bucket

  5. Escolha uma regiĂŁo prĂłxima ao seu pĂşblico-alvo.
    Regiao

  6. Desmarque a opção "Bloquear todo o acesso público" para permitir que seu site seja acessado publicamente.
    Bloquear acesso publico

  7. Confirme a configuração e clique em Criar bucket.

Passo 2: Habilitando o Bucket para Hospedagem de Site Estático

  1. No S3, clique no bucket que vocĂŞ criou.

  2. Vá para a aba Propriedades.

  3. Role até a seção Hospedagem de site estático e clique em Editar.
    Hospedagem estatico

  4. Selecione a opção Habilitar.

  5. No campo Documento de Ă­ndice, insira index.html.
    S3 bucket static site

  6. Clique em Salvar alterações.

Isso fará com que o S3 trate index.html como a página inicial do seu site.

Passo 3: Tornando os Arquivos PĂşblicos

  1. Vá para a aba Permissões do bucket.

  2. Role até Política do bucket e clique em Editar.
    Politicas do bucket

  3. Cole a seguinte polĂ­tica para permitir acesso pĂşblico:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": "*",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::meusite-exemplo/*"
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode
  • Substitua meusite-exemplo pelo nome do seu bucket.

  • Clique em Salvar alterações.

Agora, qualquer pessoa poderá acessar os arquivos do seu bucket via HTTP.

Passo 4: Fazendo o Upload dos Arquivos

  1. Volte para a aba Objetos no S3.

  2. Clique em Fazer upload.

  3. Selecione os arquivos do seu site (index.html, styles.css, etc.).

  4. Clique em Fazer upload.

Fazer upload

Passo 5: Acessando o Site

  • ApĂłs seguir os passos acima, seu site estará disponĂ­vel em um link semelhante a:

http://meusite-exemplo.s3-website-us-east-1.amazonaws.com

Substitua meusite-exemplo e a região conforme necessário.

site exemplo

Considerações Finais

Agora seu site está no ar! Para tornar o acesso mais profissional, você pode configurar um CloudFront para CDN e usar um domínio personalizado com o Route 53.

Se você gostou deste tutorial, pode comentar e se tiver sugestões vou adorar discutir sobre aqui nos comentários! 🚀

Top comments (1)

Collapse
 
thiteago profile image
Thiago David

Artigo muito bom! Sempre tive medo de mexer na AWS e sair declarando falencia mas depois desse artigo ja me sinto mais seguro HAHA.