Como alterar os limites na configuração do Nginx?
sobes.tech IA
Resposta da IA
Os limites na configuração do Nginx podem ser alterados editando os ficheiros de configuração, geralmente localizados nos diretórios /etc/nginx/ ou /usr/local/nginx/conf/.
Aqui estão os limites comuns e como alterá-los:
-
Limite de tamanho do corpo da solicitação (client_max_body_size): Define o tamanho máximo permitido do corpo da solicitação do cliente. É importante para uploads de ficheiros.
# No contexto de http, server ou location client_max_body_size 10M; # Exemplo: definir limite para 10 megabytes -
Limite de ligações (worker_connections): Define o número máximo de ligações simultâneas que um processo de trabalho pode gerir.
# No contexto de eventos events { worker_connections 1024; # Exemplo: 1024 ligações por processo # outras configurações de eventos... } -
Limite de tempo de espera da ligação (keepalive_timeout): Define o tempo durante o qual a ligação keep-alive com o cliente permanece aberta após o processamento da última solicitação.
# No contexto de http, server ou location keepalive_timeout 60s; # Exemplo: 60 segundos -
Limite de tempo de espera para enviar cabeçalhos de solicitação (client_header_timeout): Tempo de espera para o cliente enviar o cabeçalho da solicitação. Se o cliente não o enviar nesse tempo, a ligação será fechada.
# No contexto de http, server ou location client_header_timeout 60s; # Exemplo: 60 segundos -
Limite de tempo de espera para enviar o corpo da solicitação (client_body_timeout): Tempo de espera para o cliente enviar o corpo da solicitação. Se o cliente não o enviar nesse tempo, a ligação será fechada.
# No contexto de http, server ou location client_body_timeout 60s; # Exemplo: 60 segundos -
Limite de tempo de espera para a resposta do servidor proxy (proxy_read_timeout): Tempo de espera para receber a resposta do servidor proxy.
# No contexto de http, server ou location proxy_read_timeout 120s; # Exemplo: 120 segundos -
Limite de ficheiros abertos (worker_rlimit_nofile): Define o número máximo de ficheiros abertos para o processo de trabalho. É importante para muitas ligações.
# No contexto main (contexto principal) worker_rlimit_nofile 65535; # Exemplo: 65535 ficheirosNota: Para este limite, pode também ser necessário configurar os limites ao nível do sistema operativo (ulimit).
Passos para alterar:
- Determinar qual limite precisa de ser alterado e em que contexto (http, server, location, events, main).
- Encontrar o ficheiro de configuração correspondente (geralmente
nginx.confou ficheiros emconf.d/ousites-available/sites-enabled). - Adicionar ou alterar a diretiva com o valor desejado.
# Exemplo de adição no bloco server server { listen 80; server_name example.com; client_max_body_size 50M; # Alteração do limite do corpo da solicitação para este servidor location / { # ... } } - Verificar a sintaxe da configuração:
nginx -t - Reiniciar o Nginx para aplicar as alterações:
sudo systemctl reload nginx # ou sudo service nginx reload
Ao alterar os limites, é importante compreender o seu propósito e o impacto potencial na performance e na segurança.