Nginx Module Extension Book TOC – Free Books Download PDF

Nginx Module Extension Book TOC – Free Books Download PDF
Download PDF Click Here

Chapter 1: Installing Nginx Core and Modules from Source

Installing binary distribution

Red Hat, Fedora, and CentOS

Official Debian/Ubuntu packages

FreeBSD

OpenBSD

Official Win32 binaries

Installing source distribution

Nginx library dependencies

Configuring options

Files and permissions

The Event loop

Optional modules

Compilation controls

Example

The Custom module

Debugging

Installing on other platforms

Verifying your Nginx installation

Summary

Chapter 2: Configuring Core Modules

Understanding the Main module

Explaining directives

daemon

master_process

timer_resolution

pid

lock_file

worker_processes

debug_points

user

worker_priority

worker_cpu_affinity

worker_rlimit_nofile

worker_rlimit_core

worker_rlimit_sigpending

working_directory

env

Understanding the Events module

Explaining directives

accept_mutex

accept_mutex_delay

debug_connection

devpoll_changes and devpoll_events

kqueue_changes and kqueue_events

epoll_events

multi_accept

rtsig_signo

rtsig_overflow_events, rtsig_overflow_test, and rtsig_overflow_threshold

use

worker_connections

Summary

Chapter 3: Installing and Configuring HTTP Modules

Standard HTTP modules

The core module (HttpCoreModule)

Explaining directives

server

server_name

Controlling access (HttpAccessModule)

Authenticating users (HttpBasicAuthModule)

Explaining directives

Load balancing (HttpUpstreamModule)

Explaining directives

Acting as a proxy (HttpProxyModule)

Explaining directives

Compressing content (HttpGzipModule)

Explaining directives

Controlling logging (HttpLogModule)

Explaining directives

Setting response headers (HttpHeadersModule)

Explaining directives

Rewriting requests (HttpRewriteModule)

Explaining directives

Interacting with FastCGI (HttpFastcgiModule)

Simple caching (HttpMemcachedModule)

Explaining directives

Limiting requests (HttpLimitReqModule)

Explaining directives

Limiting connections (HttpLimitConnModule)

Explaining directives

Summary

Chapter 4: Installing Third-party Modules

Compiling third-party modules

Communicating with PostgreSQL (ngx_postgres)

Explaining directives

Communicating with MySQL and drizzle (drizzle-nginx)

Explaining directives

Digest Authentication (ngx_http_auth_digest)

Explaining directives

Speeding up web pages (ngx_pagespeed)

Configuring handlers

Lua scripting (ngx_lua)

Explaining directives

Reverse IP lookup using the GeoIP module (ngx_http_geoip_module)

Explaining directives

Doing healthchecks

ngx_http_healthcheck_module

Explaining directives

Load balancing

Summary

Chapter 5: Creating Your Own Module

Nginx module delegation

Handlers

Load balancers

Filters

Order of execution

The extended “Hello world” module

Writing and compiling a module

The “Hello world” source code

Components of the Nginx module

Module configuration structures

Module directives

The module context

The module definition

The handler function

Nginx Development Toolkit (NDK)