Lesson 1: Introduction and Installation
What is Nginx? Event-driven architecture and non-blocking I/O
Nginx vs Apache comparison
Installing Nginx on Linux (Ubuntu/CentOS), macOS, Windows
Directory structure and basic configuration file
Starting, stopping, and reloading Nginx
Lesson 2: Basic Configuration
nginx.conf configuration file syntax
Contexts and directives (http, server, location)
Virtual host configuration (server blocks)
Serving static files (HTML, CSS, JS, images)
Index files and autoindex configuration
Custom error pages
Lesson 3: Logging and Monitoring
Access log and error log
Custom log formats
Log rotation with logrotate
Basic metrics for monitoring
Lesson 4: Reverse Proxy
Reverse proxy concepts
Basic proxy_pass configuration
Proxy headers (X-Real-IP, X-Forwarded-For)
Upstream servers and load balancing
Basic health checks
Lesson 5: Load Balancing
Load balancing algorithms (round-robin, least_conn, ip_hash, hash)
Upstream blocks configuration
Backup servers and weights
Sticky sessions
Active health checks
Lesson 6: Caching
Browser caching with expires and Cache-Control headers
Basic proxy caching
FastCGI caching
Cache keys and cache zones
Cache purging and bypass
Lesson 7: SSL/TLS and HTTPS
SSL certificate configuration (Let's Encrypt)
HTTP to HTTPS redirect
SSL protocols and ciphers
HSTS (HTTP Strict Transport Security)
OCSP Stapling
HTTP/2 configuration
Lesson 8: Performance Tuning
Worker processes and worker connections
Keepalive connections
Buffer and timeout optimization
Gzip compression
Sendfile and tcp_nopush
Open file cache
Lesson 9: Security
Rate limiting with limit_req and limit_conn
IP blocking with deny/allow
Basic authentication
ModSecurity WAF integration
Basic DDoS protection
Secure headers (CSP, X-Frame-Options, etc.)
Lesson 10: Rewrite and Redirects
Rewrite rules with regex
Return vs rewrite directive
Location matching (exact, prefix, regex)
Try_files directive
Conditional redirects
Lesson 11: Nginx with Application Stack
PHP-FPM configuration
Nginx + Node.js
Nginx + Python (uWSGI, Gunicorn)
Nginx + Docker containers
WebSocket proxying
Lesson 12: High Availability
Nginx Plus features (if applicable)
Active-active and active-passive setup
Failover strategies
Keepalived for HA
DNS round-robin
Lesson 13: Microservices and API Gateway
Nginx as API Gateway
Service discovery
Circuit breaker patterns
JWT authentication
API rate limiting per client
Lesson 14: Advanced Topics
Nginx modules (adding third-party modules)
Lua scripting with OpenResty
Nginx streaming (RTMP module)
GeoIP filtering
Custom error handling
A/B testing with Nginx
Lesson 15: Monitoring and Troubleshooting
Stub status module
Nginx Amplify or Prometheus exporter
Debug logging
Common errors and solutions
Performance profiling
Lesson 16: Best Practices & Production
Configuration management
Blue-green deployments
Zero-downtime deployments
Backup and disaster recovery
Security hardening checklist
Documentation and maintenance