nginx - Man Page
HTTP and reverse proxy server, mail proxy server
Examples (TL;DR)
Start server with the default configuration file:
nginx
Start server with a custom configuration file:
nginx -c configuration_file
Start server with a prefix for all relative paths in the configuration file:
nginx -c configuration_file -p prefix/for/relative/paths
Test the configuration without affecting the running server:
nginx -t
Reload the configuration by sending a signal with no downtime:
nginx -s reload
Synopsis
Description
nginx (pronounced “engine x”) is an HTTP and reverse proxy server, a mail proxy server, and a generic TCP/UDP proxy server. It is known for its high performance, stability, rich feature set, simple configuration, and low resource consumption.
The options are as follows:
- -?, -h
Print help.
- -c file
Use an alternative configuration file.
- -e file
Use an alternative error log file. Special value
stderr
indicates that the standard error output should be used.- -g directives
Set global configuration directives. See Examples for details.
- -p prefix
Set the prefix path. The default value is
/usr/share/nginx
.- -q
Suppress non-error messages during configuration testing.
- -s signal
Send a signal to the master process. The argument signal can be one of:
stop
,quit
,reopen
,reload
. The following table shows the corresponding system signals:- -T
Same as -t, but additionally dump configuration files to standard output.
- -t
Do not run, just test the configuration file. nginx checks the configuration file syntax and then tries to open files referenced in the configuration file.
- -V
Print the nginx version, compiler version, and
configure
script parameters.- -v
Print the nginx version.
Signals
The master process of nginx can handle the following signals:
- SIGINT, SIGTERM
Shut down quickly.
- SIGHUP
Reload configuration, start the new worker process with a new configuration, and gracefully shut down old worker processes.
- SIGQUIT
Shut down gracefully.
- SIGUSR1
Reopen log files.
- SIGUSR2
Upgrade the nginx executable on the fly.
- SIGWINCH
Shut down worker processes gracefully.
While there is no need to explicitly control worker processes normally, they support some signals too:
- SIGTERM
Shut down quickly.
- SIGQUIT
Shut down gracefully.
- SIGUSR1
Reopen log files.
Debugging Log
To enable a debugging log, reconfigure nginx to build with debugging:
./configure --with-debug ...
and then set the debug
level of the error_log:
error_log /path/to/log debug;
It is also possible to enable the debugging for a particular IP address:
events { debug_connection 127.0.0.1; }
Environment
The NGINX
environment variable is used internally by nginx and should not be set directly by the user.
Files
- /run/nginx.pid
Contains the process ID of nginx. The contents of this file are not sensitive, so it can be world-readable.
- /etc/nginx/nginx.conf
The main configuration file.
- /var/log/nginx/error.log
Error log file.
Exit Status
Exit status is 0 on success, or 1 if the command fails.
Examples
Test configuration file ~/mynginx.conf
with global directives for PID and quantity of worker processes:
nginx -t -c ~/mynginx.conf \ -g "pid /var/run/mynginx.pid; worker_processes 2;"
See Also
Documentation at http://nginx.org/en/docs/
.
For questions and technical support, please refer to http://nginx.org/en/support.html
.
History
Development of nginx started in 2002, with the first public release on October 4, 2004.
Authors
Igor Sysoev <igor@sysoev.ru>.
This manual page was originally written by Sergey A. Osokin <osa@FreeBSD.org.ru> as a result of compiling many nginx documents from all over the world.
Referenced By
pmdanginx(1), public-inbox-daemon(8).