关注分享主机优惠活动
国内外VPS云服务器

关于nginx的命令行控制的问题(windows停止Nginx的命令)

NGX简介Nginx是一款高性能的Web服务器。从2001年开始,Nginx对硬件和操作系统内核特性的深度挖掘,使其能够保持高并发和高吞吐量。Nginx还采用了模块设计,大量第三方模块可以扩展Nginx的功能,所以Nginx的场景非常丰富。同时,Nginx采用BSD许可,这给了Nginx最大的灵活性。简单来说,Nginx有以下优势:

并发,高性能,扩展性好,可靠性高,一年停机时间可能只有几秒,热部署,而且不需要重启升级。BSD许可的BSD开源协议是一个给用户很大自由度的协议。基本上,用户可以& ldquo想做什么就做什么& rdquo,您可以自由使用和修改源代码,也可以将修改后的代码作为开源或专有软件进行再分发。

在Linux中,Nginx默认安装在/usr/local/nginx目录下,其中二进制文件路径为/usr/local/nginx/sbin/nignx,配置文件路径为/usr/local/Nginx/conf/Nginx . conf,注意:执行configure时可以指定安装在不同的目录下。

在Linux中,Nginx默认安装在目录/usr/local/nginx中,其中二进制文件路径为/usr/local/nginx/sbin/nignx,配置文件路径为/usr/local/Nginx/conf/Nginx . conf。

注意:在执行配置时,您可以指定将它们安装在不同的目录中。

1、启动Nginx二进制程序直接执行的默认方式:

/usr/local/nginx/sbin/nginx/sbin/nginx此时默认路径下的配置文件会读作:/usr/local/nginx/conf/nginx.conf实际上在没有明确指定nginx . conf的配置文件路径时,configure命令会开启使用--conf-path=PATH。

2.单独指定配置文件的启动方式/usr/local/Nginx/sbin/Nginx -c/tmp/nginx.conf,此时会读取-c参数后指定的Nginx . conf配置文件来启动Nginx。

3.单独指定安装目录的启动模式。使用-p参数指定Nginx的安装目录。

/usr/local/nginx/sbin/nginx -p/usr/local/nginx/

4.分别指定全局配置项的启动模式。可以通过-g参数临时指定一些全局配置项,使新的配置项生效。

/usr/local/nginx/sbin/nginx -g " pid/var/nginx/test.pid "上述命令意味着PID文件将被写入/var/nginx/test . PID。

-g参数的约束是指定的配置项不能与默认路径下nginx.conf中的配置项冲突,否则无法启动。和前面的例子一样,像pid /var/nginx/test.pid这样的配置项不能存在于默认的nginx.conf中

另一个约束是,在-g模式下启动的Nginx服务执行其他命令时,需要带-g参数,否则配置项可能不匹配。例如,如果您想要停止Nginx服务,您需要执行以下代码:

/usr/local/nginx/sbin/nginx -g " PID/var/nginx/test . PID " -s不取-g " PID/var/nginx/test . PID & quot;,那么pid文件就找不到了,服务器就停不了了。

5.测试配置信息是否错误。在不启动Nginx的情况下,使用-t参数只测试配置文件是否错误:

/usr/local/nginx/sbin/nginx -t的执行结果中的显式配置是否正确?

6.当在测试配置阶段没有输出信息来测试配置选项时,可以使用-q参数来避免将低于错误级别的信息输出到屏幕。

/usr/local/nginx/sbin/nginx/-T-q

7.显示版本信息。使用-v参数显示Nginx的版本信息。

/usr/local/nginx/sbin/nginx -v

8.显示编译阶段的参数。使用-V参数不仅可以显示Nginx的版本信息,还可以显示配置编译阶段的信息,如GCC编译器的版本、操作系统的版本、执行configure时的参数等。:

/usr/local/nginx/sbin/nginx -V

9.迅速停止服务。使用-s stop可以强制Nginx服务停止。-s参数实际上告诉Nginx程序向正在运行的Nginx服务发送信号量。Nginx程序通过nginx.pid文件中获取的主进程的进程ID,向运行的主进程发送TERM信号,从而快速关闭Nginx服务。

/usr/local/nginx/sbin/nginx -s stop实际上,如果通过kill命令直接向nginx主进程发送TERM或INT信号,效果是一样的。首先,通过ps命令检查nginx master的进程ID。

[root @ VM _ 0 _ 16 _ centos ~]# PS -ef | grep nginxroot 1413 1 0 2021?00:00:00 nginx:主进程。/sbin/nginxnobody 1414 1413 0 2021?00:18:51 nginx:worker process root 26388 26323 0 13:52 pts/0 00:00:00 grep --color = autonginx接下来,直接通过kill命令发送信号:

杀死-s SIGTERM 1413或者

Kill -s SIGINT 1413以上两个命令和执行/usr/local/nginx/sbin/nginx -s stop的效果完全一样。

10.优雅的服务站。如果在停止服务之前,系统Nginx服务可以正常处理所有当前请求,那么可以使用-quit参数来停止服务。

/usr/local/Nginx/sbin/Nginx -quit这个命令不同于快速停止Nginx服务。当服务快速停止时,工作进程和主进程会跳出循环,收到信号后立即退出进程。当优雅地停止服务时,它将首先关闭监听端口,停止接收新的连接,然后完成所有当前处理的连接,最后退出进程。类似于快速停止服务,可以直接向主进程发送退出信息来停止服务,效果和执行-s quit命令一样。

杀死-s SIG quit & lt;nginx主pid & gt如果您想正常地停止一个工作进程,您可以通过向该进程发送一个WINCH信号来停止服务。

杀死-s SIG winch & lt;nginx工人pid & gt

1.使正在运行的Nginx重新读取配置项并生效。使用-s reload参数可以使正在运行的Nginx服务重新加载nginx.conf文件。

/usr/local/Nginx/sbin/Nginx-s重装其实Nginx会先检查新的配置项是否有错。如果它们都是正确的,它可以优雅地关闭,然后重新启动来实现这个目标。同样,-s是发送信号,你仍然可以使用kill命令发送HUP信号来达到同样的效果。

杀死-s SIGHUP & lt;nginx主pid & gt

12.回滚日志文件。使用-s reopen参数重新打开日志文件,这样可以将当前日志文件重命名或转移到其他目录进行备份,然后重新打开时会生成一个新的日志文件。这个函数使得日志文件不会太大。

/usr/local/nginx/sbin/nginx-s重新打开,当然这和用kill命令发送USR1信号的效果是一样的。

杀死-s sigus R1 & lt;nginx主pid & gt

13.Nginx的平滑升级当Nginx服务升级到新版本时,必须替换旧的二进制文件Nginx。通常需要重启服务,但Nginx支持新版本的平滑升级,无需重启服务,包括以下步骤:

1.通知正在运行的老版本Nginx准备升级。向主进程发送USR2信号可以达到目的。

杀死-s SIG usr 2 & lt;nginx主pid & gt此时运行的Nginx会将pid文件,如/usr/local/Nginx/logs/Nginx . PID重命名为/usr/local/Nginx/logs/Nginx . PID . old bin,这样新的Nginx就可以成功启动。

2.启动Nginx的新版本。您可以使用上述任何一种启动方法。此时通过ps命令可以发现Nginx的新老版本同时运行。

3.通过kill命令向旧版主进程发送SIGQUIT信号,优雅地关闭旧版Nginx。然后只运行Nginx服务的新版本,平滑升级完成。

14.显示命令行帮助使用-h还是-?参数显示所有支持的命令行参数。

关于Nginx命令行控制的这篇文章到此为止。关于nginx命令行的更多信息,请搜索主机频道zhujipindao以前的文章。或者继续浏览下面的相关文章。希望大家支持主机频道zhujipindao。以后多来com!

未经允许不得转载:主机频道 » 关于nginx的命令行控制的问题(windows停止Nginx的命令)

评论 抢沙发

评论前必须登录!