The HTTP Core module is the component that contains all the fundamental blocks, directives, and variables of the HTTP server. It's enabled by default when you configure the build (as described in Chapter 1, Downloading and Installing Nginx), but as it turns out, it's actually optional—you can decide not to include it in your custom build. Doing so will completely disable all the HTTP functionalities, and all the other HTTP modules will not be compiled. However, if you've purchased this book it's highly likely that you are interested in the web-serving capacities of Nginx, so you will have this enabled.
This module is the largest of all the standard Nginx modules—it provides an impressive amount of directives and variables. In order to understand all these new elements and how they come into play, we first need to understand the logical organization introduced by the three main blocks—http
, server
, and location
.