Nginx提供了丰富的命令行工具,可以针对Nginx服务进行操作,接下来我们演示在CentOS 7中命令行的操作。
-?| -h
含义:打印命令行参数帮助。
示例:
-?和-h可以达到一样的效果,使用其中任何一个命令都可以。
-c file
含义:在CentOS 7中,默认使用./nginx启动时,会查找sbin同级目录中conf/nginx.conf作为默认配置文件,若是想使用其他文件作为配置文件,则可以通过这个命令指定配置文件。
示例:./nginx -c /securitit/nginx/nginx.conf。
-g directives
含义:设置全局配置指令,可以通过”./nginx -g 全局配置指令“来修改Nginx的配置项。
示例:nginx -g “pid /var/run/nginx.pid; worker_processes 8;”
全局配置指令:
accept_mutex
accept_mutex_delay
daemon
debug_connection
debug_points
env
error_log
events
include
load_module
lock_file
master_process
multi_accept
pcre_jit
pid
ssl_engine
thread_pool
timer_resolution
use
user
worker_aio_requests
worker_connections
worker_cpu_affinity
worker_priority
worker_processes
worker_rlimit_core
worker_rlimit_nofile
worker_shutdown_timeout
working_directory
关于全局配置指令的含义会在今后的博文中详细讲解,这里需要知道这些指令可以通过命令方式配置和修改。
-p prefix
含义:设置nginx根目录,像Nginx 多环境安装与配置中的默认安装方式,prefix则为/usr/local/nginx,当然可以将Nginx安装目录搬移,则启动时只需指定./nginx -p /securitit/nginx即可。
示例:./nginx -p /securitit/nginx。
-q
含义:配置测试期间抑制非错误消息。
-s signal
含义:向主进程发送信号,即通过命令控制服务的启停。
命令:
./nginx -s stop:快速关闭Nginx进程,不管有没有正在处理的请求。
./nginx -s quit:正常关闭,优雅的关闭方式,Nginx在退出前完成已经接受的连接请求,相比于./nginx -s stop来说,可以避免用户出现诡异的行为。
./nginx -s reload:重新加载配置,使用新配置启动新工作进程,并正常关闭旧工作进程。当Nginx正在持续提供服务过程中,此时需要修改Nginx配置,则应该使用此命令来对Nginx进行无缝重启。
这里需要对./nginx -s reload进行重点说明,在用户体验至上的当下,如何对服务升级让用户无强烈感知是一个绕不过的话题,Nginx提供的./nginx -s reload
./nginx -s reopen:用来打开日志文件,Nginx会把新日志写入到新的文件中,可以达到切割日志的目的。
-t 和 -T
含义:-t帮助Nginx检查配置的语法是否正确,然后尝试打开配置中引用的文件。-T与相同-t,但另外将配置文件转储到标准输出(版本1.9.2+),所谓标准输出,即是输出到屏幕上。
示例:
-v 和 -V
含义:-v可以打印nginx版本。-V可以打印nginx版本,同时包括编译器版本和配置参数。
示例:
总结:
Nginx在CentOS中,会以./nginx执行命令,在Windows中以nginx或nginx.exe执行命令即可。