标签:
本文将通过介绍一些基础且常用Nginx命令及结合官网实例进行简单讲解,适用于初学者阅读。并且假定读者已经在服务器上安装部署了Nginx服务(安装部署请参考:Nginx安装部署介绍),更高进阶使用者请出门右转。
本指南将从如何启动,停止Nginx服务及如何重新加载Nginx配置为切入点,讲解Nginx配置文件结构。并介绍如何设置Nginx静态内容服务、动态代理服务及连接公共网关接口(FastCGI)。
熟练掌握基本操作命令,可以减少很多时间的浪费(虽然针对这些基础命令说这句话显得很牵强)
windows操作系统环境下(在dos命令板,进入到nginx所在目录执行),
> start nginx 或 nginx.exe
linux操作系统环境下(一下仅为示例,具体路径以实际为准),
$ /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
对于启动或运行可执行文件,一旦Nginx启动,即可通过调用 -s + 参数的形式进行控制,具体Nginx命令格式,如下:
$ nginx -s signal
signal实例,如下所示
stop
— 快速停止Nginx服务
quit
— 优雅的停止Nginx服务(等待当前服务进程运行结束后,停止服务)
reload
— 重新加载Nginx策略配置文件,并重启
reopen
— reopening the log files
例如,想要在Nginx服务响应完成当前请求后,停止Nginx服务,则应使用以下命令:
$ nginx -s quit
注:执行这些命令,需要在启动当前nginx服务的用户下完成操作;
下面着重讲解一下,当 nginx -s reload 命令执行时,nginx服务内部工作机制是怎样的呢?
首先,当nginx服务主进程收到重新加载并重启的命令后,nginx会首先检查更改后的配置语法是否正确,并尝试按照新的配 置参数执行;
如果一切ok , 那么nginx服务主进程会重新启动一个服务工作进程,并发送消息通知旧的服务工作进程关闭旧进程。
另外,主进程会回滚并继续使用旧的配置进行工作,旧工作进程收到停止工作消息后,开始拒绝所有的新的连接请求,并继续处理已接收的请求,直到对所有已有请求服务完成。
最后,旧的服务工作进程会退出整个服务并销毁。
杀掉Nginx服务的指定进程:
kiss -s QUIT 1628
注: 1628为Nginx的某一进程id
获取Nginx服务所有活动的进程:
ps -ax | grep nginx
Nginx 由配置文件中多个指定指令组包装结合的模块组成。指令组可以被分拆成多个简单指令或者指令块。一个简单指令是由参数名,参数值中间空格,末尾分号的形式构成。一个指令块结构与一个简单指令结构类似,不过是由 大括号(‘{ }’) 的形式包围起来。如果一个指令块里面包含一个其他的指令组可像Nginx默认配置的 events , http , server等形式类似。
井号(‘ # ’)为注释行所用标识。
(未完待续)
标签:
原文地址:http://my.oschina.net/xiehongfei/blog/512921