
Explore fundamentals and hands-on lab work with Engine X as a web server, reverse proxy, and custom load balancer, covering installation, HTTP protocol, compression, configuration, performance, security, and caching.
Discover how NGINX originated to solve the ten thousand concurrent problem and evolved into a fast open source web server, proxy, cache, and load balancer.
Explore the differences between Nginx and Apache as web servers, including architecture, performance for static vs dynamic content, and the use of reverse proxy and load balancing.
Create a free DigitalOcean cloud machine to install NGINX on a Linux droplet and run hands-on labs with up to $135 in credits.
Install Nginx on an Ubuntu machine via apt, start the http server, and inspect master and worker processes, configuration files, and access and error logs on port 80.
install nginx on a centos machine by creating a digital ocean droplet, using yum, managing with systemctl, and verifying the server via its IP in a browser.
Learn how to install nginx from source on Ubuntu and CentOS, including required development tools and libraries, downloading the source, configuring with custom modules, compiling, and installing.
Add nginx as a systemd service on Ubuntu or CentOS to make the frontend resilient by auto restarting after crashes and auto starting after reboot, using a systemd service file.
Explore how the HTTP protocol powers web traffic and how TCP, IP, UDP, and other protocols enable client–server communication, routing, and secure data transfer with HTTPS.
Explore how the http protocol, tcp/ip based, enables web communication between client and server, detailing request and response formats, connectionless and stateless behavior, and dynamic versus static content.
Learn to parse http requests by examining the request line, headers, and body, and understand how the resource url guides the request and methods like get and post.
Explore HTTP response codes and their classes (1xx information, 2xx success, 3xx redirection, 4xx client errors, 5xx server errors) and how the first digit defines the status of requests.
Explore nginx configuration terminology, including contexts and directives, and learn how global, events, http, server, location, and upstream blocks shape the server's behavior.
Upload a static bootstrap site to the NGINX server and configure a virtual host on port 80, then reload the config and verify HTML, CSS, and JS delivery.
Explore how nginx location context within a server block routes requests using exact, prefix, and regex matches, including priority rules and nested locations for precise handling.
Learn how Nginx rewrite and return directives handle redirects and dynamic content, compare their complexity, and apply them within server and location blocks using regex and captures.
Learn how the try_files directive in Nginx checks for existing files or directories, uses internal redirects, and falls back to a 404 when nothing matches, with hands-on configuration examples.
Master Nginx logging by exploring access and error logs, configuring log destinations, and partitioning logs by location with the access_log directive, including turning logs off for specific paths.
Learn how Nginx handles dynamic PHP requests using PHP-FPM, configure FastCGI pass sockets, and prioritize index.php over index.html to serve dynamic content through a reverse proxy.
Tune Nginx worker processes and worker connections to optimize performance based on cores and os limits, using auto to detect CPUs and understanding master and worker roles.
Master NGINX performance tuning by configuring buffers, timeouts, and compression, optimizing client body and header handling, max body size, keep-alive, and static file caching with expiration.
Learn to add dynamic modules to NGINX by building from source, compiling modules such as image filter, loading the module with load_module, and reloading to verify integration.
Explore how a reverse proxy sits between clients and web servers to boost security, performance, and reliability, using nginx as a load balancer, cache, and SSL offloader.
Configure nginx as a reverse proxy across three machines, with a proxy server routing requests to an application server and a php-fpm backed site, including IP-based configuration and server blocks.
Enable nginx real_ip to preserve the real client IP behind a reverse proxy, by using x-real-ip header and set_header directives, and update logs to show the actual client address.
Explore client-side caching in NGINX through a hands-on lab, configuring cache-control, expires, and max-age to optimize browser and proxy performance.
Learn to enable gzip compression on the nginx server, choose a safe compression level, and compress text and script assets to reduce data transfer and speed up page loads.
Enable micro caching in Nginx to cache short‑lived dynamic content on disk, boosting speed by configuring first CGI cache parts, labels, and key rules.
Learn micro caching in nginx to cache dynamic php content and boost performance under concurrent requests by configuring a cache zone, cache keys, and cgi cache, with practical benchmarks.
Enable secure connections by implementing ssl certificates in nginx, understanding https handshake, and configuring ssl_certificate and ssl_certificate_key to serve https on port 443.
Explore http2 protocol advantages over http1.1, including multiplexed streams over a single tcp connection, binary framing, server push, and header compression to boost web performance.
Rebuild nginx with the http_v2_module, enable http2 in the config, and verify the switch from http/1.1 to http/2 via the browser network tool; restart if needed.
Learn how nginx rate limiting defends against DDoS and brute-force attacks using limit_req_zone and limit_req, with per IP, leaky bucket analogy, burst, and no delay.
Explore how a load balancer distributes traffic across a server pool to improve reliability and availability, using round robin, least connections, and least response time algorithms.
Configure a three-node nginx setup with two application servers and a dedicated load balancer, defining an upstream and proxy_pass to achieve round-robin traffic distribution and logs.
Discover the default health checks in the NGINX load balancer and how TCP and HTTP checks verify upstream health. Learn about active vs passive health checks and automatic recovery.
Learn how passive health checks in nginx monitor transactions, resume failed connections, and mark upstream servers as unavailable based on configured failed timeout and max fails.
Learn how nginx plus active health checks probe upstream servers by sending periodic health requests and marking failures. Configure health_check with interval, fails, passes, and optional match conditions.
Explore how http caching works in nginx, distinguishing static and dynamic content, and learn how a caching server and browser cache reduce server load, bandwidth, and latency.
Learn how HTTP cache-control headers manage client and server caching, including max-age, no-cache, no-store, public, and private directives for static resources.
Learn to control caching with http cache-control headers in nginx by creating a dedicated location for png files and applying no-store. Verify via curl and observe reduced browser cache entries.
Learn how the if-modified-since header and last-modified date ensure clients receive fresh content from the backend, using 304 not modified and 200 responses to manage cached files.
Master Nginx IP access control by whitelisting and denying specific addresses with location blocks, allow and deny directives, and optional include files for secure admin panels.
Learn how to limit access to resources in Nginx using limit_rate and limit_connection, distribute bandwidth fairly, and test with wget.
*** Complete Update Just Launched! - NGINX 2021 - All Lessons Updated ***
NGNX is one of the top grade HTTP Server which powers most of the top Enterprise websites like Netflix, Dropbox , Wordpress, GitHub, Discovery, and many others.
This is one of the first courses which is specially designed for beginners who would like to master NGNX. NGNX is not just an HTTP Server but can also act as a Reverse Proxy, Load Balancer.
Mastering NGNX means having a solid foundation for HTTP Protocol. Thus this course initially focuses on HTTP Protocol and then we slowly move to NGNX and using NGNX in a High-Performance Enterprise Environment. All designed for beginners.
Build a strong foundation in NGNX with this practical course suited to both beginners and the more experienced.
Learn to customize the NGNX installation
Configure NGNX as a web server
Install & configure a server-side programming language as an NGNX backend
Learn to tweak NGNX for optimal performance
Secure NGNX with some security best practices
The course starts by looking at the differences between NGNX and Apache for those with Apache experience and then explains the different ways of installing NGNX, customizing your install, and configuring NGNX as a service.
The installation section also covers updating NGNX without the downtime and adding/removing modules.
The bulk of the course is then focussed on configuring NGNX as a web server, including connecting it to a PHP backend and configuring some of NGNX's best features, such as Gzipping and GeoIP.
The final section will go over securing the server and the user via SSL and other security best practices.
Upon completion of this course, you will have the practical skills to immediately start building secure, high-performance web servers or improve and better understand existing hosting solutions you might work with.
This course is to the point and everything is demonstrated in the most simple, yet practical ways.
We do not focus on the theory, but get straight to installing, configuring, and learning!