nginx短篇(3):基础命令

栏目: 服务器 · Nginx · 发布时间: 5年前

内容简介:所属分类:nginx
  • A+

所属分类:nginx 运维技术

首先,感谢上次在微信公众号中点击"好看"的读者,这篇文章是为你们写的。

在前两篇文章中,我们介绍了安装nginx的方法以及配置文件的基础语法结构,那么在这篇文章中,我们来了解一下nginx的常用基础命令。

上一篇文章中我们已经提到了怎样启动nginx,如果你是通过编译安装的方式安装了nginx,那么我们可以通过nginx安装目录的sbin目录中的nginx二进制文件启动nginx,由于我将nginx安装到了/srv/nginx/目录中,所以,我使用如下命令启动nginx

# /srv/nginx/sbin/nginx

没错,nginx命令就是我们最常用到的命令了,上例nginx命令没有使用任何参数,我们还可以配合一些参数来使用nginx命令,如果你使用的是yum源的方式安装的nginx,你可以在任何路径下输入如下命令启动nginx

# nginx

通过yum源安装nginx后,可以在任何目录中直接使用nginx命令,这是因为通过yum源安装nginx后,nignx二进制文件默认会放在/usr/sbin/目录中,而这个目录正好属于默认环境变量PATH变量中的一部分,所以,如果你通过编译安装的方式安装了nginx,也可以将nginx的安装目录中的/sbin目录配置到PATH环境变量中,以便在任何路径中都可以直接使用nginx命令,以我的编译安装环境作为示例,步骤如下:

1、创建/etc/profile.d/nginx.sh文件,以便写入环境变量配置。
 
2、在/etc/profile.d/nginx.sh文件中写入如下内容:
nginx_home=/srv/nginx
PATH=$nginx_home/sbin:$PATH
export PATH
 
3、使用如下命令重载刚才的配置
# source /etc/profile

完成上述步骤,即可在编译安装nginx后,方便的执行nginx命令了。

聊完上述快捷配置后,我们再来聊聊nginx命令的一些常用选项。

不加任何选项直接执行nginx命令,就是用于启动nginx服务的,如果你想要看看nginx命令都有哪些可用的选项,则可以使用"-h选项"或者"-?选项",如下:

# nginx -h
# nginx -?

使用"-v"选项(小写v)可以查看nginx的版本信息,如下

# nginx -v
nginx version: nginx/1.14.2

使用"-V"选项(大写V)可以查看当前nginx的编译信息,在最开始的文章中我们就介绍过,编译安装nginx时,有很多"可选模块"可供我们使用,我们可以选择安装或不安装对应的可选模块,同时,我们还可以在编译安装时,设置一些编译选项,比如安装目录、各种文件的目录、编译器选项等等,这些信息都属于编译信息,所以,我们可以通过如下命令查看这些编译信息。

# nginx -V

当然,即使你使用的是yum源的方式安装的nginx,同样可以上述命令查看这些编译信息,只不过yum源中的nginx二进制文件是别人提前为我们编译好的,那些编译信息也是别人为我们编译nginx时所使用的编译设置。

使用"-c"选项可以指定使用哪个配置文件来启动nginx服务,默认情况下,会使用nginx安装目录中的conf目录中的nginx.conf文件作为主配置文件,你也可以在命令行中使用"nginx -c /xxxpath/nginx.conf"来指定具体路径下的配置文件启动nginx服务。

使用"-t"选项或者"-T"选项可以测试nginx.conf配置文件中是否存在语法错误,前一篇文章中我们提到过,nginx.conf中的配置指令需要以分号结尾,如果没有以分号结尾,会在启动nignx时报语法错误,其实,在启动nginx服务之前,我们就可以使用"nginx -t"命令对nginx.conf文件进行语法检查,如果配置文件中存在语法错误,那么相应的错误信息会输出,如果配置语法没有问题,则会出现类似如下信息

# nginx -t
nginx: the configuration file /srv/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /srv/nginx/conf/nginx.conf test is successful

无论语法是否正确,"nginx -t"命令都不会启动nginx服务,"nginx -t"命令只用于检查是否存在语法错误,此处所谓的语法错误包括"非法指令"、"重复指令"、"指令没有以分号结尾"等。

当存在语法错误时,"nginx -t"命令和"nginx -T"命令输出的错误信息是完全相同的,只有在语法正确时,这两个命令才存在区别,"nginx -T"命令会在语法正确时,将配置文件中的内容输出到屏幕中,我们可以将这些内容重定向到一个文件中,以便将当前的正确配置进行备份。

还有一个非常常用的选项,就是"-s"选项,"-s"选项的作用就是向正在运行的nginx进程发送信号,这样解释可能不容易理解,我们换个角度来说吧,比如,当nginx服务已经启动,我们想要停止nginx服务,则可以使用"nginx -s stop"命令停止nginx服务,"nginx -s stop"命令表示向nginx进程发送stop信号,这样解释你应该明白了吧,使用"-s"选项除了能够发送stop信号,还能发送quit信号、reopen信号以及reload信号,那么这三种信号分别代表什么意思呢?我们一一道来

quit信号:与stop信号的作用类似,quit信号作用也是用于停止nginx服务,quit信号和stop信号的区别在于,nignx进程收到stop信号以后会立即停止服务,而收到quit信号后,不会再接收新的请求,但是会先处理完已经接受的链接请求,处理完这些请求之后再停止服务,这种停止方式被称之为"优雅的停止"。

reload信号:reload信号的作用就是在不停止服务的情况下重载配置文件,比如,nginx正在正常的提供服务,此时,管理员修改了nginx.conf文件中的配置指令,管理员希望新的配置立刻生效,但是又不希望重启nginx服务,此时就可以使用"nginx -s reload"命令重载配置文件,以便在不重启nginx的情况下载入新的配置,同时避免了因重启而造成的服务中断。

reopen信号:利用reopen信号可以使nignx进程重新打开日志文件,以便实现日志分割的效果,关于日志切割的话题会单独总结一片文章,reopen信号也会在届时进行演示,此处不用纠结。

此处将上述常用选项进行总结,以便回顾:

不加选项:启动nginx服务

-h - ? 选项: 查看 nginx 命令帮助

-v选项:查看nginx版本信息

-V选项:查看nginx编译信息

-c选项:启动nginx时指定主配置文件

-t或-T选项:测试nginx.conf文件是否存在语法错误

-s 选项: 向正在运行的 nginx 主进程发送信号,信号的可用值有 stop, quit, reopen, reload

好了,这篇文章就先写到这里,希望nginx短篇系列文章能够对你有所帮助~

我的微信公众号

关注"实用运维笔记"微信公众号,当博客中有新文章时,可第一时间得知哦~


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Web技术

Web技术

杰克逊 / 清华大学出版社 / 2007-6 / 59.00元

本书详细介绍了广泛的Web技术,包括:HTTP、XHTML、CSS、JavaScript、DOM、Java servlet、XML及相关技术、JSP、SOAP、Web服务、JAX-RPC等;简要概述了相关的技术,包括:CGI、ASP、PHP和ColdFusion技术。本书还使用大量的示例来示范各种技术的原理和用法,并且说明相关的概念。各章章末还提供了一些问题,用以测试学生对内容的理解程度,并让他们......一起来看看 《Web技术》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

MD5 加密
MD5 加密

MD5 加密工具