Início » Infra para WordPress » NGINX vs Apache: conceitos, semelhanças e diferenças
Infra para WordPress

NGINX vs Apache: conceitos, semelhanças e diferenças

Uma comparação detalhada para te ajudar na melhor escolha
Escrito Por Leandro Vieira em fevereiro de 2020 /6 min de leitura
Conteúdo escrito por humano

NGINX e WordPress são dois softwares largamente populares. O primeiro conquistou muito espaço do Apache, enquanto o segundo, centenas de gerenciadores de conteúdo.

O servidor web Apache sempre foi muito popular. Eu, particularmente, tive meu primeiro contato com servidores web através dele.

Através da Apiki, estando por trás do desenvolvimento de grandes projetos em WordPress com estruturas modernas e audiência de milhões de usuários e Page Views.

O NGINX é o servidor web focado em performance, projetado para trabalhar com a concorrência de milhões de requisições e vem sendo a opção, praticamente unânime, dos novos projetos baseados em WP.

Conceito de Apache

O servidor Apache ou Servidor HTTP Apache é um servidor web muito popular, usado principalmente no Linux.

Ele é web livre, ou seja, é gratuito e pode ser estudado e modificado através de seu código fonte por qualquer pessoa.

Conceito de NGINX

NGINX (lê-se “engine x”) é um servidor web (HTTP e IMAP/POP3/Proxy) rápido, leve e com inúmeras possibilidades de configuração para melhor performance.

Tem uma arquitetura orientada a eventos e foi criado para solucionar uma questão delicada: a baixa capacidade dos servidores em processar um determinado número de requisições ao mesmo tempo.

LAMP e as aplicações modernas

A sigla LAMP é comum entre as equipes de infraestrutura. LAMP é composto pelas iniciais de Linux, Apache, MySQL e PHP.

Estruturas de aplicações modernas não trabalham somente com essas tecnologias. Elas adicionam novos ingredientes e, em alguns casos, substituem.

É o caso da troca do Apache pelo NGINX.

É muito comum termos a combinação: Linux, NGINX, MySQL (ou MariaDB, Amazon Aurora) e PHP + Node.js. Várias outras combinações podem ser utilizadas, baseadas nas necessidades e requisitos dos projetos em questão.

A crescente também é considerável com o uso de cointaners através do Docker e o conceito de microservices.

Você conhece as principais diferenças entre NGINX e Apache?

NGINX ou Apache: principais diferenças

NGINX versus Apache

Ambos são servidores web. Mas há consideráveis diferenças entre eles.

A disparidade precisa ser conhecida, entendida e levada em consideração nas tomadas de decisões de negócios, desenvolvimento e manutenção.

Estatísticas de uso

O Apache, sem dúvidas, é o servidor web mais popular.

No entanto, o NGINX vem a cada ano, e de forma consistente, ganhando espaço, popularidade e sendo a preferência dos novos projetos.

Logo, a mudança e, por conseguinte, o primeiro lugar em uso será muito em breve.

Nas análises do site BuiltWith, conseguimos analisar sua participação de mercado em diferentes cenários. Em alguns casos, como o Top 10k sites ele fica empatado com o Apache.

.htaccess

Apache tem uma configuração descentralizada, possivelmente espalhada em diversos diretórios da aplicação através do arquivo oculto .htaccess.

É possível desabilitar esta opção, mas é prática muito comum mantê-la.

NGINX tem uma configuração centralizada, num único arquivo. Ele não reconhece, logo não interpreta, o .htaccess.

Módulos

Quase todos os softwares tem uma arquitetura que permite sua extensibilidade através de outros softwares que o complementam. Alguns, como o WordPress, o chamam de plugins, outros de add-ons.

No caso dos servidores web o chamamos de “módulos”.

NGINX e Apache têm seus mecanismos de  módulos, mas trabalham de forma diferenciada um do outro.

Através do segundo, os módulos podem ser carregados em tempo de execução, enquanto no primeiro os módulos são carregados dinamicamente e precisam ser compilados junto ao seu core.

Através dos módulos ambos conseguem ter as mesmas funcionalidades geralmente requisitadas, como: compressão de arquivos, autenticação, funcionalidade de e-mail, login, reescrita de URLs, Geolocalização, criptografia, Proxing e vários outros.

Arquivos e interpretação de URLs

Esse tipo de atividade nos servidores web é muito utilizada para uma infinidade de possibilidades, como a implementação de URLs amigáveis, bloqueio de determinados arquivos para maior segurança e várias outras regras.

Ambos permitem a interpretação direta dos arquivos quanto de forma abstrata.

Expressões regulares são muito utilizadas para o encontro prático de uma combinação de possibilidades.

NGINX foi desenvolvido para ser tanto um servidor web quanto um servidor de proxy.

Devido sua arquitetura requerida para essas duas atividades, sua interpretação primária são com URLs.

Enquanto o Apache utiliza as diretrizes <Directoy>, <Files> e <Location>, o NGINX utiliza os blocos server e locations para interpretar todas as requisições.

Por ser configurado para interpretar diferentes padrões de URLs, o NGINX não verifica o sistema de arquivos até que ele esteja preparado para servir a requisição, o que explica a não implementação de um mecanismo como arquivo .htaccess com o Apache.

As regras de segurança e performance

Todo servidor web precisa aplicar regras de segurança para proteção das aplicações que estão rodando em seu mecanismo.

Todas as dicas que você encontrar sobre segurança e que serão aplicadas em servidores web, saiba que é possível, em quase 100% dos casos, aplicar em ambos.

Atente-se que no Apache as regras normalmente serão aplicadas no arquivo .htaccess ou no httpd.conf.

Já no NGINX, elas serão aplicadas nos blocos server/locations no arquivo de configuração.

O mesmo se aplica às regras para melhorias de performance, como otimização de imagens, aplicação de regras de cachê e compressão de arquivos.

Conclusão

Como já dito, os novos projetos estão sendo elaborados com arquiteturas mais modernas e conceitos inovadores.

Neste quesito, o uso do NGINX tem sido mais aplicável e se tornado a opção das maiorias das equipes, seja dos desenvolvedores ou SysAdmins.

As equipes de marketing, quando conhecem a diferença de lidar com picos de audiência entre NGINX e Apache, passam a sugerir o primeiro por conseguirem melhor desempenho e atendimento de várias requisições simultâneas.

O mesmo acontece com as equipes de produto. Os casos de sucesso do NGINX têm permitido manter um servidor com menor custo e maior resposta à demanda de crescimento.

No WP Host, o produto de hospedagem WordPress da Apiki, estamos aplicando a migração de toda a base para o NGINX e será muito em breve a única opção de servidor web que suportaremos.

Leandro Vieira

Uma das grandes referências de WordPress no Brasil, entusiasta e evangelista da plataforma. Fundador e CEO da Apiki, empresa especializada no desenvolvimento web com WordPress.
Qual nota você da para este artigo?
Ruim

O que você achou disso?

Clique nas estrelas

Média da classificação 0 / 5. Número de votos: 0

Nenhum voto até agora! Seja o primeiro a avaliar este post.

Excelente
Artigos Relacionados

  1. Charles Alano Müller
    Uma dúvida de quem não conhece o NGINX. Se não existe a figura do .htaccess como funciona a reescrita de URLs e redirecionamentos 301/302?
    1. Daniel Dos Santos
      Eu iria fazer uma pergunta similar...
      1. Leandro Vieira Pinho
        Oi, gente. Vejam os seguintes links: http://nginx.org/en/docs/beginners_guide.html#conf_structure https://winginx.com/en/htaccess
  2. […] opções são diversas, como a adoção do IPv6, o protocolo HTTP/2, o servidor web NGINX, Memchached, Varnish, para citar […]
  3. […] e sua distribuição, além de atualizá-lo e instalar os softwares necessários: PHP, MySQL, NGINX, […]
  4. […] web Apache ou NGINX? Esse último tem excelente resposta para sites de grande […]
  5. […] opções de servidores para projetos de grande porte são o servidor NGINX, IPv6, protocolo HTTP2, Varnish, entre […]
  6. […] opções de servidores para projetos de grande porte são o servidor NGINX, IPv6, protocolo HTTP2, Varnish, entre […]
  7. […] se há memória suficiente para a execução dos processos. Em caso de uso de servidores Apache, verifique também as diretivas no arquivo .htaccess. Se nenhuma das hipóteses resolver, entre em […]
  8. […] Nele temos instruções de como instalar o algoritmo através de módulos para o servidor web NGINX. […]
  9. […] Ele é implementado em servidores web como Apache e NGINX. […]
  10. […] Outro ponto bem relevante é o suporte aos servidores web Apache e NGINX. […]

Construa seu site WordPress sob medida com os maiores especialistas em WordPress da America Latina
Conheça a Apiki

Faça um comentário
Cadastre-se rápido

Fazer Login