Configuração Básica do Nginx
Entenda a estrutura do principal arquivo de configuração do Nginx e as diretivas essenciais para disponibilizar conteúdo web simples.
Configuração Básica do Nginx é uma aula grátis de API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway), e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em inglês.
Nginx Config: The Blueprint
Nginx uses a simple, yet powerful, configuration file to tell it what to do. Think of this file as the blueprint for your web server.
It defines how Nginx handles requests, serves content, and interacts with other services. Mastering this file is key to using Nginx effectively.
Nginx Config: Main Blocks
Nginx configuration is organized into a hierarchical structure using logical blocks. Each block groups related directives.
main: Global settings for the entire Nginx process.events: Settings for how Nginx handles connections.http: The core for all HTTP web server functionalities.
Directives inside these blocks control Nginx's specific behaviors.
user nginx;
worker_processes auto;
events {
# Event context directives
}
http {
# HTTP context directives
# ... server blocks go here
}Global Settings: The `main` Context
The main context contains global directives that affect the entire Nginx process. These are foundational settings for Nginx's operation.
user: Defines the user and group that Nginx worker processes run as (e.g.,nginxorwww-data).worker_processes: Sets the number of worker processes.autois often a good default, matching your CPU cores.
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;Connection Handling: The `events` Context
The events context configures how Nginx handles network connections. It's about optimizing performance for concurrent clients.
worker_connections: The maximum number of simultaneous connections a single worker process can open.
A higher number here allows Nginx to handle more concurrent users efficiently. The use directive (e.g., epoll for Linux) specifies the connection processing method.
events {
worker_connections 1024;
use epoll; # Linux-specific, for high performance
}Web Serving: The `http` Context
The http context is where most of your web server configuration resides. It defines how Nginx processes HTTP requests and responses.
Inside this block, you'll configure things like MIME types, logging, and, most importantly, define individual web servers using server blocks.
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
# ... server blocks will be here ...
}Defining Websites: `server` Blocks
Inside the http block, you define one or more server blocks. Each server block acts like a "virtual host," allowing Nginx to host multiple websites or applications on the same physical server.
It specifies what port Nginx should listen on and for which domain names it should respond.
http {
server {
# This is a server block for one website
}
server {
# Another server block for a different site
}
}Server Basics: `listen` & `server_name`
Two crucial directives within a server block are listen and server_name. They tell Nginx how to identify and handle requests for a specific website.
listen: Specifies the IP address and port number Nginx should listen on (e.g.,80for HTTP).server_name: Defines the domain names (hostnames) this server block should respond to (e.g.,example.com www.example.com).
server {
listen 80;
server_name example.com www.example.com;
# ... location blocks will be here ...
}URL Matching: `location` Blocks
Within a server block, location blocks are used to define how Nginx should handle requests for specific URLs or URL patterns.
For instance, you might want to serve static files from one directory for requests to /images/ and handle all other requests differently.
server {
listen 80;
server_name mywebsite.com;
location / {
# Handle requests to the root path
}
location /api/ {
# Handle requests starting with /api/
}
}Serving Files: `root` & `index`
For serving static content like HTML, CSS, and images, root and index are essential directives within a location block.
root: Specifies the base directory where Nginx should look for files for requests handled by this location.index: Defines the default file Nginx should serve when a directory is requested (e.g.,index.html).
This is how Nginx finds and delivers your website's files.
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}Full Example: Static Web Server
Let's put it all together to create a simple Nginx configuration that serves static HTML files from a specific directory.
This configuration listens on port 80 for requests to mywebsite.com and serves files from the /var/www/html directory.
http {
include mime.types;
default_type application/octet-stream;
server {
listen 80;
server_name mywebsite.com;
location / {
root /var/www/html;
index index.html index.htm;
}
}
}Quick Check: Nginx Directives
Which of the following Nginx directives are typically found within a server block, or within a location block nested inside a server block?
Recap: Nginx Config Basics
Great job! You've learned the fundamental structure of Nginx configuration, including the main, events, http, server, and location blocks.
You can now configure Nginx to listen on specific ports, respond to domain names, and serve static files effectively.
Next, we'll dive into more advanced Nginx features, including how to configure it as a reverse proxy!
Perguntas Frequentes
A aula “Configuração Básica do Nginx” é grátis?
Sim — o texto completo de “Configuração Básica do Nginx” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway), atualize para CoddyKit PRO. O curso de API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) inclui 4 aulas no total.
O que vou aprender em “Configuração Básica do Nginx”?
Entenda a estrutura do principal arquivo de configuração do Nginx e as diretivas essenciais para disponibilizar conteúdo web simples. Você pratica API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway)?
Nenhuma experiência prévia é necessária. API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Configuração Básica do Nginx”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway)?
Sim. Cada aula de API Gateway & Reverse Proxy (Nginx + Spring Cloud Gateway) inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Instalação e Configuração do Nginx
- Configuração Básica do Nginx
- Disponibilização de Conteúdo Estático com Nginx
- Blocos de localização e correspondência de solicitações no Nginx