本文提供了一个基本的介绍nginx的,并描述了可以用它做一些简单的任务,首先,nginx的已经安装在读者的机器上了。如果不是,先看到安装nginx的章节。本指南介绍如何启动和停止nginx,并重新加载它的配置,解释了配置文件的结构,并介绍如何设置nginx的服务了静态内容,如何配置Nginx作为代理服务器,以及如何将其与连接FastCGI应用。
nginx的有一个主进程和多个工作进程。主进程的主要目的是读取和评估的配置,并维持工作进程。工作进程做请求的实际处理。 nginx的使用event-based模型和OS-dependent机制来有效地分配工作进程中的请求。工作进程的数量可以配置,也可自动调整为可用的CPU内核(见worker_processes)的数量。
nginx和它的工作模块是配置文件决定的,默认情况下,配置文件nginx.conf
放在/usr/local/nginx/conf
, /etc/nginx
,或/usr/local/etc/nginx
.
启动,停止,重新加载配置
启动nginx的,运行可执行文件。一旦nginx
的启动后,它可以通过与-s
参数执行来控制。使用以下语法:
nginx -s signal
也可以运行下列的任意一个:
stop — 快速关闭
quit — 正常关闭
reload —重新加载配置文件
reopen — 重新打开日志文件
例如,关闭nginx进程时,先等待工作进程完成当前请求后,在停止,这个命令应该在启动nginx的相同用户下执行。
nginx -s quit
在配置文件中所作的更改不会被马上应用到,直到命令重新加载配置或重新启动,重新加载配置。执行:
nginx -s reload
一旦主进程接收重新加载配置的信号,它检查新配置文件语法的正确性并尝试应用配置,如果是一次成功,主进程开始新的工作流程,将消息发到老的工作进程,要求它们关闭,否则,主进程回滚,继续在老的配置下运行。老的工作进程,接收命令进行关闭,停止接收新连接,并继续运行当前的请求,直到所有这些请求结束,在这之后,老的工作进程停止。
也可以发送到nginx进程的Unix命令工具,如kill
,在这种情况下,命令直接发送PID到一个进程,nginx主进程的进程ID写入,默认情况下,nginx.pid
在目录/usr/local/nginx/logs
或 /var/run
。例如,如果主进程ID是1628,发送QUIT命令正常关闭nginx,执行:
kill -s QUIT 1628
获取所有正在运行的nginx进程列表,可以使用ps,例如:
ps -ax | grep nginx