Book Image

Nginx HTTP Server - Second Edition

By : Clement Nedelcu
Book Image

Nginx HTTP Server - Second Edition

By: Clement Nedelcu

Overview of this book

<p>Nginx is a lightweight HTTP server designed for high-traffic websites, with network scalability as the primary objective. With the advent of high speed Internet access, short loading times and fast transfer rates have become a necessity. This free, open source solution will either come as a full replacement of other software such as Apache, or stand in front of your existing infrastructure to improve its overall speed.</p> <p>"Nginx HTTP Server - Second Edition" provides a detailed guide to setting up Nginx in different ways that correspond to actual production situations: as a standalone server, as a reverse proxy, interacting with applications via FastCGI and more. In addition, the complete directive reference will be your best friend at all stages of the configuration and maintenance processes.</p> <p>This book is the perfect companion for both Nginx beginners and experienced administrators. For beginners, it will take you through the complete process of setting up this lightweight HTTP server on your system and configuring its various modules to get it to do exactly what you need, in a fast and secure way. For more experienced administrators, this book provides different angles of approach that can help you make the most of your current infrastructure. Nginx can be employed in many situations, whether you are looking to construct an entirely new web-serving architecture or simply want to integrate an efficient tool to optimize your site loading speeds.</p> <p>This book takes you through the setup and configuration of Nginx by detailing every step of the way, from downloading to configuring your server in a selection of common architectures.</p>
Table of Contents (17 chapters)
Nginx HTTP Server Second Edition
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Directive Index
Index

Appendix A. Directive Index

The following table lists directives from all of the available first-party Nginx modules, as of Version 1.2.9. Each directive comes with a brief description, the module providing the directive (marked with a * if the module is not included by default), and the chapter and section where you will find more information. Directives are sorted alphabetically.

Directive

Module

accept_mutex: Enables or disables the use of an accept mutex

Chapter 2, Events module section

Events

accept_mutex_delay: Sets the delay of the accept mutex

Chapter 2, Events module section

Events

access_log: Defines access log settings

Chapter 4, Website access and logging section

Log

add_after_body: Adds content after response body

Chapter 4, Content and encoding section

Addition*

add_before_body : Adds content before response body

Chapter 4, Content and encoding section

Addition*

add_header : Adds arbitrary headers to responses

Chapter 4, Content and encodi ng section

Headers

alias : Sets a folder alias

Chapter 3, Paths and documents section

HTTP Core

allow : Allows an IP address or address range to access a resource

Chapter 4, Limits and restrictions section

Access

ancient_browser : Affects $ancient_browser if the request user agent matches a specified string

Chapter 4, About your visitors section

Browser

ancient_browser_value : Sets the value to be affected to $ancient_browser

Chapter 4, About your visitors section

Browser

auth_basic: Sets a text message to be displayed in basic authentication dialogs

Chapter 4, Limits and restrictions section

Auth Basic

auth_basic_user_file: Defines the file containing usernames and passwords for basic authentication

Chapter 4, Limits and restrictions section

Auth Basic

autoindex: Enables automatic folder indexes

Chapter 4, Website access and logging section

Autoindex

autoindex_exact_size: Shows file sizes in bytes for automatic folder indexes

Chapter 4, Website access and loggin g section

Autoindex

autoindex_localtime: Enables or disables adjusting file dates to match server local time

Chapter 4, Website access and logging section

Autoindex

break: Prevents further URL rewrites

Chapter 4, Rewrite module section

Rewrite

charset: Sets charset value in Content-Type HTTP header

Chapter 4, Content and encoding section

Charset

charset_map: Defines character re-encoding tables

Chapter 4, Content and encoding section

Charset

charset_types: Defines MIME types eligible for charset re-encoding

Chapter 4, Content and encoding section

Charset

chunked_transfer_encoding: Allows disabling of chunked transfers

Chapter 3, Client request section

HTTP Core

client_body_buffer_size: Specifies the buffer size for client request body

Chapter 3, Client requests section

HTTP Core

client_body_in_file_only: Forces Nginx to store the client request body as a file in all cases

Chapter 3, Client requests section

HTTP Core

client_body_in_single_buffer: Defines whether or not the body of client requests should be stored in a single buffer

Chapter 3, Client requests section

HTTP Core

client_body_temp_path: Sets the path for storing temporary client request body files

Chapter 3, Client requests section

HTTP Core

client_body_timeout: Sets inactivity timeout for reading client request body

Chapter 3, Client requests section

HTTP Core

client_header_buffer_size: Sets the size of buffers allocated to request headers

Chapter 3, Client reques ts section

HTTP Core

client_header_timeout : Sets inactivity timeout for reading client request headers

Chapter 3, Client requests section

HTTP Core

client_max_body_size: Sets the maximum size for client request body

Chapter 3, Client requests section

HTTP Core

connection_pool_size: Defines the size of the pool memory space to be allocated to connections

Chapter 3, Socket and host configuration section

HTTP Core

connections: Deprecated (see worker_connections)

Chapter 2, Events module section

Events

create_full_put_path: Enables or disables recursive folder creation (creates full path) for PUT requests

Chapter 4, Other miscellaneous modules section

DAV*

daemon: Enables or disables daemon mode

Chapter 2, Core module directives section

Core

dav_access: Defines access permissions at the current level

Chapter 4, Other miscellaneous modules section

DAV*

dav_methods: Selects DAV methods to be enabled

Chapter 4, Other miscellaneous modules section

DAV*

debug_connection: Enables detailed logs for the specified IP address or address range

Chapter 2, Events module section

Events

debug_points: Enables or disables debug points

Chapter 2, Core module directives section

Core

degradation: Sets memory condition to enable degradation error page

Chapter 4, Other miscellaneous modules section

Degradation

degrade: Sets error code to be returned by Nginx when low memory conditions are met

Chapter 4, Other miscellaneous modules section

Degradation

default_type: Sets the default MIME type for served files

Chapter 3, MIME types section

HTTP Core

deny: Denies an IP address or address range access to a resource

Chapter 4, Limits and restrictio ns section

Access

directio: Enables or disables the use of direct I/O

Chapter 3, File processing and caching section

HTTP Core

directio_alignment: Sets direct I/O byte alignment

Chapter 3, File processing and caching section

HTTP Core

disable_symlinks: Defines the way Nginx should handle symbolic links

Chapter 3, File processing and caching section

HTTP Core

empty_gif: Serves an empty gif from memory

Chapter 4, Content and encoding section

Empty GIF

env: Defines or redefines environment variables

Chapter 2, Core module directives section

Core

error_log: Specifies error logging settings

Chapter 2, Core module directives section

Core

error_page: Defines behavior for specific error codes

Chapter 3, Paths and documents section

HTTP Core

expires: Controls cache headers sent in responses

Chapter 4, Content and encoding section

Headers

fastcgi_buffer_size: Sets the size of the FastCGI response buffer

Chapter 5, Main directives section

FastCGI

fastcgi_buffers: Sets buffer amount and buffer size for communications with the FastCGI backend

Chapter 5, Main directives section

FastCGI

fastcgi_cache: Defines a FastCGI cache zone

Chapter 5, FastCGI caching section

FastCGI

fastcgi_cache_bypass: Defines conditions for bypassing cache

Chapter 5, FastCGI caching section

FastCGI

fastcgi_cache_key: Sets the key for caching FastCGI-processed requests

Chapter 5, FastCGI caching section

FastCGI

fastcgi_cache_lock: Locks cache entries for a specified time

Chapter 5, FastCGI cachin g section

FastCGI

fastcgi_cache_lock_timeout: Sets amount of time cache entries should be locked

Chapter 5, FastCGI caching section

FastCGI

fastcgi_cache_methods: Sets eligible HTTP methods for FastCGI caching

Chapter 5, FastCGI caching section

FastCGI

fastcgi_cache_path: Configures FastCGI caching options for a specified zone

Chapter 5, FastCGI caching section

FastCGI

fastcgi_cache_use_stale: Defines whether or not stale cache data should be used in certain circumstances

Chapter 5, FastCGI caching section

FastCGI

fastcgi_cache_valid: Sets caching validity period for specific response codes

Chapter 5, FastCGI caching section

FastCGI

fastcgi_catch_stderr: Allows you to intercept some of the error messages sent to stderr and store them in the Nginx error log

Chapter 5 , Main directives section

FastCGI

fastcgi_connect_timeout: Defines the backend server connection timeout

Chapter 5, Main directives section

FastCGI

fastcgi_bind: Binds socket to specified network interface

Chapter 5, Main directives section

FastCGI

fastcgi_hide_header: Skips FastCGI headers

Chapter 5, Main directives section

FastCGI

fastcgi_ignore_client_abort: Sets FastCGI module behavior when clients abort requests

Chapter 5, Main directives section

FastCGI

fastcgi_ignore_headers: Prevents Nginx from processing one of the following four headers from the backend server response: X-Accel-Redirect, X-Accel-Expires, Expires, Cache-Control

Chapter 5, Main directives section

FastCGI

fastcgi_index: Specifies folder index for FastCGI

Chapter 5, Main directives section

FastCGI

fastcgi_intercept_errors: Defines whether or not FastCGI backend generated errors should be returned as it is

Chapter 5, Main directiv es section

FastCGI

fastcgi_keep_conn: Allows keeping connections to the FastCGI backend alive

Chapter 5, Main directives section

FastCGI

fastcgi_max_temp_file_size: Sets maximum size for temporary files

Chapter 5, Main directives section

FastCGI

fastcgi_next_upstream: Defines the cases where requests should be abandoned and resent to the next upstream server of the block

Chapter 5, Main directives section

FastCGI

fastcgi_no_cache: Sets conditions for disabling caching

Chapter 5, FastCGI caching section

FastCGI

fastcgi_param: Configures a FastCGI header to be passed to the backend

Chapter 5, Main directives section

FastCGI

fastcgi_pass: Enables FastCGI backend by specifying its location

Chapter 5, Main directives section

FastCGI

fastcgi_pass_header: Re-enables FastCGI omitted headers

Chapter 5, Main directives section

FastCGI

fastcgi_pass_request_body: Defines whether or not the request body should be passed on to the backend server

Chapter 5 , Main directives section

FastCGI

fastcgi_pass_request_headers: Defines whether or not extra request headers should be passed on to the backend server

Chapter 5 , Main directives section

FastCGI

fastcgi_read_timeout: Sets the timeout for reading response from FastCGI backend

Chapter 5, Main directives section

FastCGI

fastcgi_send_lowat: Allows you to make use of the SO_SNDLOWAT flag for TCP sockets for FastCGI communications (under BSD-based systems only)

Chapter 5, Main directives section

FastCGI

fastcgi_send_timeout: Timeout for sending data to the backend server

Chapter 5, Main directives section

FastCGI

fastcgi_split_path_info: Splits a URI path according to a regular expression

Chapter 5, Main directives section

FastCGI

fastcgi_store: Defines FastCGI cache store settings

Chapter 5, Main directives section

FastCGI

fastcgi_store_access: Sets FastCGI cache store access permissions

Chapter 5, Main directives section

FastCGI

fastcgi_temp_file_write_size: Sets the write buffer size when saving temporary files to the storage device

Chapter 5 , Main directives section

FastCGI

fastcgi_temp_path: Sets folder path for FastCGI temporary files

Chapter 5, Main directives section

FastCGI

flv: Enables seeking in FLV files

Chapter 4, Content and encoding section

FLV*

geo: Defines a map of values based on the client's IP address

Chapter 4, About your visitors section

Geo

geoip_city: Sets the path to your IP-to-city database

Chapter 4, About your visitors section

GeoIP*

geoip_country: Sets the path to your IP-to-country database

Chapter 4, About your visitors section

GeoIP*

geoip_proxy: Defines a trusted IP address or range

Chapter 4, About your visitors section

GeoIP*

geoip_proxy_recursive: Enables recursive search for client IP addresses

Chapter 4, About your visitors section

GeoIP*

google_perftools_profiles: Sets path of Google-perftools profiles file

Chapter 4, Other miscellaneous modules section

Google Perftools*

gzip_buffers: Defines the size of buffers for storing a Gzipped response

Chapter 4, Content and encoding section

Gzip

gzip_comp_level: Defines the compression level for Gzipped responses

Chapter 4, Content and encoding section

Gzip

gzip_disable: Disables Gzip compression for requests with a user-agent matching the specified regular expression

Chapter 4, Content and encoding section

Gzip

gzip_hash: Sets the amount of memory that should be allocated for the internal compression state (memLevel argument)

Chapter 4, Content and encoding section

Gzip

gzip_http_version: Enables Gzip compression for the specified HTTP version

Chapter 4, Content and encoding section

Gzip

gzip_min_length: Sets a minimum length for responses to be eligible to GZIP compression

Chapter 4, Content and encoding section

Gzip

gzip_no_buffer: Enabling this directive disables buffering for Gzipped responses

Chapter 4, Content and encoding section

Gzip

gzip_proxied: Enables or disables Gzip compression for the body of responses received from a proxy

Chapter 4, Content and encoding section

Gzip

gzip_static: Enables pre-compressed response module

Chapter 4, Content and encoding section

Gzip static*

gzip_types: Sets MIME types eligible for Gzip compression

Chapter 4, Content and encoding section

Gzip

gzip_vary: Enables or disables including the Vary HTTP header in the response

Chapter 4, Content and encoding section

Gzip

gzip_window: Sets the size of the window buffer (windowBits argument) for Gzipping operations

Chapter 4 , Content and encoding section

Gzip

if_modified_since : Defines how Nginx handles the If-Modified-Since HTTP header

Chapter 3, Paths and documents section

HTTP Core

ignore_invalid_headers: When disabled, Nginx returns a 400 Bad Request HTTP error, in case request headers are misformed

Chapter 3, Client requests section

HTTP Core

image_filter: Applies transformations on images

Chapter 4, Content and encoding section

Image Filter*

image_filter_buffer: Sets the maximum file size for images

Chapter 4, Content and encoding section

Image Filter*

image_filter_jpeg_quality: Sets JPEG quality for image filter output

Chapter 4, Content and encoding section

Image Filter*

image_filter_sharpen: Applies a sharpening filter on images

Chapter 4, Content and encoding section

Image Filter*

image_filter_transparency: Sets transparency settings for image filtering

Chapter 4, Content and encoding section

Image Filter*

include: Includes an external configuration file

Chapter 2, Core module directives section

Core

index: Sets the default filename(s) for folder indexes

Chapter 4, Website access and logging section

Index

internal: Restricts a location block to internal sub-requests and redirects

Chapter 3, Limits and restrictions section

HTTP Core

keepalive_disable: Allows disabling keepalive functionality for the browser families of your choice

Chapter 3, Client requests section

HTTP Core

keepalive_requests: Maximum amount of requests served over a single keepalive connection

Chapter 3, Client requests section

HTTP Core

keepalive_timeout: Amount of seconds Nginx waits before closing a keepalive connection

Chapter 3, Client requests section

HTTP Core

large_client_header_buffers: Sets the size of buffers for client request with larger headers

Chapter 3, Client requests section

HTTP Core

limit_conn: Limits the amount of connections per zone

Chapter 4, Limits and restrictions section

Limit Zone

limit_except: Sets the allowed HTTP methods

Chapter 3, Limits and restrictions section

HTTP Core

limit_rate: Limits transfer rate per connection

Chapter 3, Limits and restrictions section

HTTP Core

limit_rate_after: Limits transfer rate after a specified limit

Chapter 3, Limits and restrictions section

HTTP Core

limit_req: Limits the amount of requests per zone

Chapter 4, Limits and restrictions section

Limit Req

limit_req_log_level: Sets level required to log denied requests

Chapter 4, Limits and restriction section

Limit Req

limit_req_zone: Defines a zone to be used with limit_req

Chapter 4, Limits and restrictions section

Limit Req

limit_conn: Sets connection limit for a zone defined with limit_conn_zone

Chapter 4, Limits and restrictions section

Limit Conn

limit_conn_log_level: Sets level required to log denied requests

Chapter 4, Limits and restrictions section

Limit Conn

limit_conn_zone: Defines a zone to be used with limit_conn

Chapter 4, Limits and restrictions section

Limit Conn

lingering_close: Controls the way Nginx closes client connections

Chapter 3 , Client requests section

HTTP Core

lingering_time: Defines behavior when a client submits a request that exceeds the maximum allowed size

Chapter 3 , Client requests section

HTTP Core

lingering_timeout: Amount of time that Nginx should wait between two read operations before closing the client connection

Chapter 3, Client requests section

HTTP Core

listen: Specifies settings for listening sockets

Chapter 3, Socket and Host configuration section

HTTP Core

lock_file: Sets the path of the lock file

Chapter 2, Core module directives section

Core

log_format: Defines format of access log entries

Chapter 4, Website access and logging section

Log

log_not_found: Enables or disables logging of 404 errors

Chapter 3, Other directives section

HTTP Core

log_subrequest: Enables or disables whether details about sub-requests in the logfiles will be included

Chapter 3, Other directives section

HTTP Core

map: Defines a map of values to be matched against a variable; the result is stored in another variable

Chapter 4, About your visitors section

Map

map_hash_bucket_size: Sets the maximum size of a map entry

Chapter 4, About your visitors section

Map

map_hash_max_size: Sets the maximum amount of entries in a map

Chapter 4, About your visitors section

Map

master_process: Enables or disables master process

Chapter 2, Core module directives section

Core

max_ranges: Allows limiting byte ranges for clients requesting partial content

Chapter 3, Client requests section

HTTP Core

memcached_bind: Binds socket to specified network interface

Chapter 4, Content and encoding section

Memcached

memcached_buffer_size: Sets memcached data buffer size

Chapter 4, Content and encoding section

Memcached

memcached_connect_timeout: Sets memcached connect timeout

Chapter 4, Content and encoding section

Memcached

memcached_next_upstream: Sets conditions for switching to the next upstream server for memcached configurations

Chapter 4, Content and encodi ng section

Memcached

memcached_pass: Configures memcached access

Chapter 4, Content and encoding section

Memcached

memcached_read_timeout: Sets memcached data read operations timeout

Chapter 4, Content and encoding section

Memcached

memcached_send_timeout: Sets memcached data send operations timeout

Chapter 4, Content and encoding section

Memcached

merge_slashes: Enables or disables merging of double slashes in URLs

Chapter 3, Other directives section

HTTP Core

min_delete_depth: Defines a minimum URI depth for deleting files or directories when processing the DELETE command

Chapter 4, Other miscellaneous modules section

DAV*

modern_browser: Affects the $modern_browser if the request user agent matches specified string

Chapter 4, About your visitors section

Browser

modern_browser_value: Sets the value to be affected to $modern_browser

Chapter 4, About your visitors section

Browser

mp4: Enables seeking in MP4 files

Chapter 4, Content and encoding section

MP4*

msie_padding: Enables response padding for MSIE browsers

Chapter 3, Other directives section

HTTP Core

msie_refresh: Enables MSIE-specific redirects for the MSIE browser family

Chapter 3, Other directives section

HTTP Core

multi_accept: Enables or disables accepting multiple connections from the queue at once

Chapter 2, Events module section

Events

open_file_cache: Defines open file cache store settings

Chapter 3, File processing and caching section

HTTP Core

open_file_cache_errors: Defines whether or not file errors should be cached in the open file cache store

Chapter 3, File processing and caching section

HTTP Core

open_file_cache_min_uses: Defines the minimum amount of uses for a file to remain in the cache

Chapter 3, File processing and caching section

HTTP Core

open_file_cache_valid: Sets the cache verification interval

Chapter 3, File processing and caching section

HTTP Core

open_log_file_cache: Configures the cache of log file descriptors

Chapter 4, Website access and logging section

Log

override_charset: Overrides charset for documents received via proxy or FastCGI

Chapter 4, Content and encoding section

Charset

pcre_jit: Toggles Just-In-Time compilation for regular expressions

Chapter 2, Core module directives section

Core

pid: Sets the path of the PID file

Chapter 2, Core module directives section

Core

port_in_redirect: Enables or disables including port number for internal redirects

Chapter 3, Socket and host configuration section

HTTP Core

post_action: Defines a post-completion action, a URI that will be called by Nginx after the request has been completed

Chapter 3 , Other directives section

HTTP Core

postpone_gzipping : Defines a minimum data threshold to be reached before starting the Gzip compression

Chapter 4 , Content and encoding section

HTTP Core

postpone_output: Postpones the sending of the response; this directive defines the size of data to be sent in each packet

Chapter 3, Socket and host configuration section

HTTP Core

proxy_bind: Binds socket to specified network interface

Chapter 6, Main directives section

Proxy

proxy_buffer_size: Sets the size of backend response buffer

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_buffering: Enables or disables backend response buffering

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_buffers: Sets the amount and size of buffers for backend communications

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_busy_buffers_size: Sets the size of buffers for busy backend servers

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_cache: Defines a proxy cache zone

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_cache_bypass: Defines conditions for bypassing cache

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_cache_key: Sets the key for caching proxied requests

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_cache_methods: Sets eligible HTTP methods for proxy caching

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_cache_min_uses: Sets the amount of times a cache entry should be used before being protected from cache sweeping

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_cache_path: Configures proxy caching options for a specified zone

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_cache_use_stale: Defines whether or not stale cache data should be used in certain circumstances

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_cache_valid: Sets caching validity period for specific response codes

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_connect_timeout: Sets timeout for connecting to the backend

Chapter 6, Limits, timeouts, and errors section

Proxy

proxy_cookie_domain: Applies on-the-fly modification to the domain attribute of a cookie forwarded to the backend

Chapter 6, Other directives section

Proxy

proxy_cookie_path: Applies on-the-fly modification to the path attribute of a cookie forwarded to the backend

Chapter 6, Other directives section

Proxy

proxy_headers_hash_bucket_size: Sets the maximum size of entries in the headers hash table

Chapter 6, Other directives section

Proxy

proxy_headers_hash_max_size: Sets the maximum amount of entries in the headers hash table

Chapter 6, Other directives section

Proxy

proxy_hide_header: Skips specified header for reverse proxying

Chapter 6, Main directives section

Proxy

proxy_http_version: Sets the HTTP version to be used for communicating with the proxy backend

Chapter 6, Other directives section

Proxy

proxy_ignore_client_abort: Sets proxy module behavior when clients abort requests

Chapter 6, Limits, timeouts, and errors section

Proxy

proxy_ignore_headers: Prevents Nginx from processing specified headers

Chapter 6, Other directives section

Proxy

proxy_intercept_errors: Defines whether or not backend generated errors should be returned as it is

Chapter 6, Limits, timeouts, and errors section

Proxy

proxy_max_temp_file_size: Sets the maximum size for temporary files

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_method: Allows additional HTTP methods for reverse proxying

Chapter 6, Main directives section

Proxy

proxy_next_upstream: Defines upstream server skipping conditions

Chapter 6, Main directives section

Proxy

proxy_no_cache: Sets conditions for disabling caching

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_pass: Enables reverse proxying to a backend server by specifying its location

Chapter 6, Main directives section

Proxy

proxy_pass_header: Disables skipping of specified header for reverse proxying

Chapter 6, Main directives section

Proxy

proxy_pass_request_body: Allows request body to be passed to backend

Chapter 6, Main directives section

Proxy

proxy_pass_request_header: Allows extra request headers to be passed to backend

Chapter 6, Main directives section

Proxy

proxy_read_timeout: Sets read timeout for backend communications

Chapter 6, Limits, timeouts, and errors section

Proxy

proxy_redirect: Enables or disables handling of redirects generated by backend

Chapter 6, Main directives section

Proxy

proxy_send_lowat: Allows you to make use of the SO_SNDLOWAT flag for TCP sockets for communications with backends (under BSD-based operating systems only)

Chapter 6, Limits, timeouts, and errors section

Proxy

proxy_send_timeout: Sets write timeout for backend communications

Chapter 6, Limits, timeouts, and errors section

Proxy

proxy_set_body: Sets request body for debugging purposes

Chapter 6, Other directives section

Proxy

proxy_set_header: Sets extra header data for debugging purposes

Chapter 6, Other directives section

Proxy

proxy_store: Enables cache store for proxy communications

Chapter 6, Other directives section

Proxy

proxy_store_access: Sets cache store access permissions

Chapter 6, Other directives section

Proxy

proxy_temp_file_write_size: Sets write buffer size when writing temporary files

Chapter 6, Caching, buffering, and temporary files section

Proxy

proxy_temp_path: Sets folder path for proxy temporary files

Chapter 6, Caching, buffering, and temporary files section

Proxy

random_index: Enables or disables selecting a random file to be served as folder index

Chapter 4, Website access and logging section

Random Index*

read_ahead: Enables file pre-reading

Chapter 3, File processing and cachin g section

HTTP Core

real_ip_header: Sets the HTTP header to be used for the replacement IP address

Chapter 4, About your visitors section

Real IP*

real_ip_recursive: Enables recursive search for client IP addresses

Chapter 4, About your visitors section

Real IP*

recursive_error_pages: Enables or disables the use of recursive error pages with the error_page directive

Chapter 3, Paths and documen ts section

HTTP Core

referer_hash_bucket_size: Sets the bucket size of the referers hash tables

Chapter 3, Other directives section

HTTP Core

referer_hash_max_size: Sets the maximum size of the referers hash tables

Chapter 3, Other directives section

HTTP Core

request_pool_size: Defines the size of the pool memory space to be allocated to requests

Chapter 3, Socket and host configuration section

HTTP Core

reset_timedout_connection: Enables or disables erasing connection information after timeouts

Chapter 3, Socket and host configuration section

HTTP Core

resolver: Sets the IP address of the DNS server

Chapter 3, Other directives section

HTTP Core

resolver_timeout: Sets the timeout for resolving hostnames

Chapter 3, Other directives section

HTTP Core

return: Interrupts request and returns specified code

Chapter 4, Rewrite module section

Rewrite

rewrite: Rewrites a URL

Chapter 4, Rewrite module section

Rewrite

rewrite_log: Enables or disables issuing log messages from the rewrite engine at the notice log level

Chapter 4, Rewrite module section

Rewrite

root: Sets the document root of a virtual host or virtual path

Chapter 3, Paths and documents section

HTTP Core

satisfy: Defines resource access conditions

Chapter 3, Limits and restrictions section

HTTP Core

secure_link: Specifies a string from which checksum and expiration date of a link should be extracted

Chapter 4, SSL and security section

Secure Link*

secure_link_md5: Sets an expression to be MD5-hashed and compared to the value extracted from secure_link

Chapter 4, SSL and security section

Secure Link*

secure_link_secret: Sets the secret word for the secure URL (note: as of Nginx 0.8.50 this directive has been deprecated so use secure_link and secure_link_md5 instead)

Chapter 4, SSL and security section

Secure Link*

send_lowat: Enables or disables the use of the SO_SNDLOWAT TCP socket flag under BSD systems for communications with the client

Chapter 3, Socket and host configuration section

HTTP Core

send_timeout: The number of seconds after the last packet received before Nginx closes a client connection

Chapter 3, Client requests section

HTTP Core

sendfile: Enables or disables the use of the sendfile kernel call to handle file transmissions

Chapter 3, Socket and Host Configuration section

HTTP Core

sendfile_max_chunk: Maximum size of data to be used for each call to sendfile

Chapter 3, Socket and Host Configuration section

HTTP Core

server: Declares a server entry in an upstream block

Chapter 5, Upstream blocks section

Upstream

server_name: Sets the virtual host server names

Chapter 3, Socket and Host Configuration section

HTTP Core

server_name_in_redirect: Enables or disables server name for internal redirects

Chapter 3, Socket and Host Configuration section

HTTP Core

server_names_hash_bucket_size: Sets the maximum size of a server name in the hash table

Chapter 3, Socket and Host Configuration section

HTTP Core

server_names_hash_max_size: Sets the maximum amount of server names in the hash table

Chapter 3, Socket and Host Configuration section

HTTP Core

server_tokens: Enables or disable server information display

Chapter 3, Other directives section

HTTP Core

set: Sets the value of a variable

Chapter 4, Rewrite module section

Rewrite

set_real_ip_from: Declares a trusted IP address, range, or socket

Chapter 4, About your visitors section

Real IP*

source_charset: Sets the source charset for documents

Chapter 4, Content and encoding section

Charset

split_clients: Splits visitors into groups based on the variable(s) of your choice

Chapter 4, About your visitors section

Split Clients

ssi: Activates server-side includes

Chapter 4, SSI module directives and variables section

SSI

ssi_ignore_recycled_buffers: Prevents Nginx from making use of recycled buffers

Chapter 4, SSI module directives and variables section

SSI

ssi_min_file_chunk: Defines buffering and storage settings for SSI requests

Chapter 4 , SSI module directives and variables section

SSI

ssi_silent_errors: Defines whether or not SSI errors should be silent

Chapter 4, SSI module directives and variables section

SSI

ssi_types: Defines MIME types eligible for SSI parsing

Chapter 4, SSI module directives and variables section

SSI

ssi_value_length: Defines the maximum size for SSI tag values

Chapter 4, SSI module directives and variables section

SSI

ssl: Enables HTTPS for a virtual host

Chapter 4, SSL and security section

SSL*

ssl_certificate: Sets the path of the PEM certificate file

Chapter 4, SSL and security section

SSL*

ssl_certificate_key: Sets the path of the PEM secret key file

Chapter 4, SSL and security section

SSL*

ssl_ciphers: Sets ciphers to be used by the SSL engine

Chapter 4, SSL and security section

SSL*

ssl_client_certificate: Sets the path of the client PEM certificate file

Chapter 4, SSL and security section

SSL*

ssl_crl: Sets the path of the CRL file (Certificate Revocation List)

Chapter 4, SSL and securi ty section

SSL*

ssl_dhparam: Sets the path of the DH file

Chapter 4, SSL and security section

SSL*

ssl_engine: Specifies the name of the desired SSL engine

Chapter 2, Core module directives section

Core

ssl_prefer_server_ciphers: Defines whether or not the server ciphers should be preferred over the client servers

Chapter 4, SSL and security section

SSL*

ssl_protocols: Sets protocols to be used by the SSL engine

Chapter 4, SSL and security section

SSL*

ssl_session_cache: Configures SSL session cache settings

Chapter 4, SSL and security section

SSL*

ssl_session_timeout: Sets the timeout for SSL sessions

Chapter 4, SSL and security section

SSL*

ssl_verify_client: Enables or disables verifying client certificates

Chapter 4, SSL and security section

SSL*

ssl_verify_depth: Sets certificate verification depth

Chapter 4, SSL and security section

SSL*

stub_status: Enables or disables stub status information

Chapter 4, Other miscellaneous modules section

Stub Status*

sub_filter: Searches and replaces text in the response

Chapter 4, Content and encoding section

Substitution*

sub_filter_once: Defines whether or not sub_filter should search and replace only one occurrence

Chapter 4, Content and encoding section

Substitution*

sub_filter_types: Defines MIME types to be affected by the search and replace filter

Chapter 4, Content and encoding section

Substitution*

tcp_nodelay: Enables or disables TCP_NODELAY socket option for keep-alive connections

Chapter 3, Socket and Host configuration section

HTTP Core

tcp_nopush: Enables or disables TCP_NOPUSH (BSD) or TCP_CORK (Linux) socket option for keep-alive connections

Chapter 3, Socket and Host configuration section

HTTP Core

thread_stack_size: Sets the size of the thread stack

Chapter 2, Core module directives section

Core

timer_resolution: Interval for synchronizing the internal clock

Chapter 2, Core module directives section

Core

try_files: Attempts to serve files, and if none are found, jump to a named block

Chapter 3, Paths and documents section

HTTP Core

types: Matches MIME types with file extensions

Chapter 3, MIME types section

HTTP Core

types_hash_bucket_size: Sets the bucket size for the MIME types hash table

Chapter 3 , MIME types section

HTTP Core

types_hash_max_size: Defines the maximum size of the MIME types hash table

Chapter 3, MIME types section

HTTP Core

underscores_in_headers: Allows or disallows underscores in HTTP header names

Chapter 3, Other directive s section

HTTP Core

uninitialized_variable_warn: Enables or disables logging of directives that use variables which are not initialized

Chapter 4, Rewrite module section

Rewrite

upstream: Defines an upstream block for load-balanced architectures

Chapter 5, Upstream blocks section

Upstream

use: Sets the preferred event model

Chapter 2, Events module section

Events

user: Sets the user and group for running worker processes

Chapter 2, Core module directives section

Core

userid Enables or disables the user-ID module

Chapter 4, About your visitors section

User ID

userid_domain: Sets the domain assigned to the cookie

Chapter 4, About your visitors section

User ID

userid_expires: Sets the cookie expiration date

Chapter 4, About your visitors section

User ID

userid_name: Sets the name assigned to the cookie

Chapter 4, About your visitors section

User ID

userid_p3p: Sets the value of the p3p header

Chapter 4, About your visitors section

User ID

userid_path: Sets the path part of the cookie

Chapter 4, About your visitors section

User ID

userid_service: Sets the IP address of the service issuing the cookie

Chapter 4, About your visitors section

User ID

valid_referers: Defines a list of accepted referrers for a location

Chapter 4, About your visitors section

Referrer

variables_hash_bucket_size: Defines the maximum length of a variable in the variables hash table

Chapter 3, Other directive s section

HTTP Core

variables_hash_max_size: Defines the maximum size of the variables hash table

Chapter 3, Other directives section

HTTP Core

worker_aio_requests: Sets the maximum number of outstanding asynchronous I/O operations for a single worker process

Chapter 2, Core module directives section

Core

worker_connections: Defines the amount of simultaneous connections per worker process

Chapter 2, Events Module section

Events

worker_cpu_affinity: Defines affinity of worker processes with CPU cores

Chapter 2, Core module directives section

Core

worker_priority: Sets the priority of worker processes

Chapter 2, Core module directives section

Core

worker_processes: Sets the amount of worker processes

Chapter 2, Core module directives section

Core

worker_rlimit_core: Sets the size of core files for worker processes

Chapter 2, Core module directives section

Core

worker_rlimit_nofile: Sets the amount of file a worker process can use simultaneously

Chapter 2, Core module directives section

Core

worker_rlimit_sigpending: Defines the amount of signals a worker process can queue

Chapter 2, Core module directives section

Core

worker_threads: Enables threading (not recommended)

Chapter 2, Core module directives section

Core

working_directory: Sets the working folder for worker processes

Chapter 2, Core module directives section

Core

xml_entities: Specifies a DTD file containing symbolic element definitions

Chapter 4, Content and encoding section

XSLT*

xslt_param: Defines an XSLT parameter

Chapter 4, Content and encoding section

XSLT*

xslt_string_param: Defines an XSLT string parameter

Chapter 4, Content and encoding section

XSLT*

xslt_stylesheet: Specifies the XSLT template file path with its parameters

Chapter 4, Content and encoding section

XSLT*

xslt_types: Sets MIME types, on which transformations should be applied

Chapter 4, Content and encoding section

XSLT*