Title here
Summary here
A reverse proxy forwards client requests to backend services, enhancing security and performance. Nginx also supports load balancing to distribute traffic efficiently across multiple backend servers.
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://127.0.0.1:5000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}upstream backend {
server backend1.example.com;
server backend2.example.com;
}
server {
listen 80;
location / {
proxy_pass http://backend;
}
}curl -I http://example.comSecuring web traffic with SSL/TLS is essential for data protection.
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.comserver {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
}server {
listen 80;
server_name example.com;
return 301 https://$host$request_uri;
}Nginx Ingress Controller manages external access to Kubernetes services.
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm install my-nginx ingress-nginx/ingress-nginx --namespace ingress-nginx --create-namespaceapiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: myapp-ingress
spec:
rules:
- host: myapp.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: myapp-service
port:
number: 80kubectl apply -f myapp-ingress.yaml
kubectl get ingresslimit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
location / {
limit_req zone=one burst=5;
}gzip on;
gzip_types text/css application/javascript;add_header X-Frame-Options DENY;
add_header Content-Security-Policy "default-src 'self'";By completing these hands-on projects, you’ll gain practical experience in deploying, securing, and optimizing Nginx for real-world applications.