Nginx控制命令

进入到Nginx安装目录的sbin文件夹中,找到nginx的执行脚本。对于Nginx来讲,经常进行的操作有启动、停止、重载等。

启动:

nginx -s start

对于启动,需要强调的就是配置错误或者80端口冲突引起的无法启动问题。在Nginx的配置文件更改完成后,我们可以先使用nginx -t命令来检验一下配置是否正确,如果有问题,查找并更改就可以;如果是80端口冲突,使用lsof软件进行查看80端口的占用情况lsof -i:80,结果如下:

[root@noteclass data]# lsof -i:80
COMMAND     PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
AliYunDun   885  root   19u  IPv4 692428      0t0  TCP noteclass:42202->100.100.30.25:http (ESTABLISHED)
nginx     15370  root    6u  IPv4 690493      0t0  TCP *:http (LISTEN)
nginx     15370  root    8u  IPv6 690495      0t0  TCP *:http (LISTEN)
nginx     15371 nginx    6u  IPv4 690493      0t0  TCP *:http (LISTEN)
nginx     15371 nginx    8u  IPv6 690495      0t0  TCP *:http (LISTEN)

如果发现有其他进程占用了80端口,直接使用Kill命令杀死即可。

kill -s 9 '想要杀死的PID'

停止
网上的很多教程都有使用Kill命令杀死nginx进程的介绍,但是本章并不介绍这种方法,也不推荐使用kill命令杀死nginx进程的做法。使用Nginx自带的停止方法感觉会好一些。
Nginx停止有两种方式:一种是立即停止,一种是优雅停止。

nginx -s stop    //立即停止
nginx -s quit    //优雅停止

这两种方式的区别在于:使用立即停止,nginx不管当前是否有未处理完的请求,都会直接关闭。而优雅停止则会拒绝新请求,对于未处理完的请求,继续进行处理,直到所有未处理请求全部处理完毕后再关闭。

重载

nginx -s reload

当我们修改Nginx的配置文件后,需要使新配置生效,重启固然好使,但是即便重启的速度很快,也需要一定的时间,对于访问量很大的网站来讲,也会造成问题,这时就可以使用上面的命令进行重载。
Nginx能够重载而不重启的原理就是Nginx是以多进程的方式来进行工作的,如下图:


Nginx启动时会产生一个master主进程和N个worker子进程,主进程负责管理子进程。当一个重载命令传到主进程时,主进程会发送信号给子进程,子进程在处理完当前正在处理的请求后就会关闭,此时主进程会根据最新配置重新建立一个子进程来处理后续请求,以此类推,直到所有的子进程都重新产生,这时Nginx就完成了重载。

重新打开日志

nginx -s reopen 

这个命令主要用于日志切割,为什么要进行日志切割?Nginx的架构就是所有的日志都记录在一个文件里面,我的Nginx服务器日志信息记录在access.log文件里面。时间的变长以及网站访问量的提升,都会使该文件变的越来越大,进而影响到服务器的性能。所以我们需要定期分割日志文件。

Linux中使用mv命令可以很方便的把文件移动走或者重命名,当把目前在用的日志文件移动走或者重命名,重新建立一个同名的日志文件后,会发现日志并没有记录在新建立的日志文件中,而是记录在以前的文件里面,虽然它被移动走或者重命名了。原因就是nginx的子进程在写日志信息时,它要写入数据的地方对应的是日志文件在磁盘中的资源地址,而不是对应文件系统中的某个文件。所以虽然文件名称或文件路径变更了,其在磁盘中的资源地址依然没变。所以信息仍被写入到旧的地址,也就是旧的文件中。

使用该命令可以变更nginx子进程写入日志的资源地址,地址变更后,就意味着会写入新的文件,这就完成了日志切割。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,122评论 6 505
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,070评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,491评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,636评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,676评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,541评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,292评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,211评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,655评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,846评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,965评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,684评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,295评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,894评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,012评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,126评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,914评论 2 355

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,657评论 18 139
  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 31,934评论 2 89
  • 第一章 Nginx简介 Nginx是什么 没有听过Nginx?那么一定听过它的“同行”Apache吧!Ngi...
    JokerW阅读 32,679评论 24 1,002
  • 自己现在梳理出来了就是写作是可以融合我所有想做的事情。所以接下来自己的人生过程自己就是可以通过小说来创造出来,这样...
    吾宗老孙子阅读 999评论 0 0
  • contains方法的源码是用equals()比较的,也就是说比较的是地址,所以要在类中重写equals()方法....
    xiaoliman阅读 5,513评论 0 0