Gerador de Configuração nginx

Monte um server block nginx completo a partir de botões simples, ao vivo no seu navegador. Seus dados permanecem no seu dispositivo.

Seu domínio, caminhos e localizações de certificado são usados apenas no seu navegador para montar a configuração, que nunca é enviada. Ainda assim, evite colar o conteúdo de chaves privadas reais em qualquer ferramenta.

Precisa de permissões de arquivo para a raiz do seu site? Experimente a Calculadora chmod.

Sobre Gerador de Configuração nginx

Este gerador de configuração nginx transforma um punhado de campos e botões em um server block nginx completo e válido que você coloca em sites-available. Escolha um site estático (root + index com try_files) ou um proxy reverso (proxy_pass com os cabeçalhos padrão Host, X-Real-IP, X-Forwarded-For e X-Forwarded-Proto, mais linhas opcionais de upgrade WebSocket). Ative o SSL para escutar na 443, configure ssl_certificate e ssl_certificate_key, e emita um segundo server block que redireciona HTTP para HTTPS com 301. Adicione gzip, cache de longa duração para recursos estáticos, um limite client_max_body_size e um redirecionamento canônico de www para não-www com um clique cada. Como gerador de configuração nginx, ele mantém as chaves balanceadas e a indentação limpa, depois permite copiar o resultado ou baixá-lo como <domínio>.conf. Tudo roda no seu navegador, então seu domínio e caminhos permanecem no seu dispositivo.

Recursos

Como usar Gerador de Configuração nginx

  1. Digite seu domínio e a porta de escuta, e escolha site estático ou proxy reverso.
  2. Preencha o root e o index, ou o upstream do proxy_pass para o seu app.
  3. Ative SSL, gzip, cache, tamanho do corpo e um redirecionamento www conforme necessário.
  4. Leia a configuração nginx ao vivo à direita, depois Copie ou Baixe o .conf.

Exemplo

Entrada

Domain: example.com
Mode: Reverse proxy
Upstream: http://127.0.0.1:3000
SSL: on

Saída

server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name example.com www.example.com;

    ssl_certificate /etc/ssl/certs/example.com.crt;
    ssl_certificate_key /etc/ssl/private/example.com.key;

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

server {
    listen 80;
    listen [::]:80;
    server_name example.com www.example.com;

    return 301 https://$host$request_uri;
}

Um proxy reverso na 443 com o bloco de redirecionamento HTTP→HTTPS correspondente.

Erros comuns e solução de problemas

Perguntas frequentes

Como configuro um proxy reverso no nginx?
Escolha Proxy reverso, digite seu upstream em proxy_pass (por exemplo http://127.0.0.1:3000), e o gerador adiciona um bloco location / com os cabeçalhos padrão Host, X-Real-IP, X-Forwarded-For e X-Forwarded-Proto. Ative o suporte a WebSocket se o seu app usar ws/wss.
Onde ficam os server blocks do nginx?
No Debian e no Ubuntu, salve o arquivo gerado como /etc/nginx/sites-available/example.com e crie um symlink para sites-enabled. Em muitas outras distros, coloque-o em /etc/nginx/conf.d/example.com.conf, depois execute nginx -t e recarregue.
Como o botão SSL muda a configuração?
Ele muda o server principal para escutar em 443 ssl, adiciona ssl_certificate e ssl_certificate_key, e emite um segundo server block na porta 80 que redireciona cada requisição para https:// com 301, para que os visitantes sempre cheguem ao site seguro.
Qual é a diferença entre um site estático e um proxy reverso aqui?
O modo estático serve arquivos de um diretório root com index e um location try_files, ideal para HTML, SPAs ou recursos compilados. O modo de proxy reverso encaminha as requisições para um servidor de app upstream com proxy_pass e cabeçalhos de proxy em vez de servir arquivos.
Posso adicionar gzip e cache de recursos estáticos?
Sim. O botão gzip adiciona um bloco gzip ajustado para texto, JSON, JavaScript, CSS, XML e SVG, e o botão de cache adiciona um location que define um expires de 30 dias e um cabeçalho Cache-Control immutable para extensões de recurso comuns.
Meu domínio ou configuração é enviado para algum lugar?
Não. Este gerador de configuração nginx roda inteiramente no seu navegador, então o domínio, os caminhos e as localizações de certificado que você digita são processados no seu dispositivo e o arquivo gerado nunca é enviado.

Ferramentas relacionadas

Todas as ferramentas de ArrayKit