开启、关闭、重启 Nginx

官方地址:http://wiki.nginx.org/CommandLine

开启:

/usr/local/nginx/sbin/nginx

关闭,用信号控制,语法:

kill 信号名 pid

查看 Nginx 进程:

netstat -antp 

ps aux|grep nginx

master process 表示主进程,用来管理子进程

关闭 Nginx:

master process 和 worker process 这两个进程已经不存在了,同时 80 端口已经没有被占用了。

Nginx 的信号控制包括:

  

TERM, INT Quick shutdown(紧急关闭,轻易不要这样使用)
QUIT Graceful shutdown(优雅地关闭进程,即等请求结束后再关闭)
KILL Halts a stubborn process
HUP Configuration reload
Start the new worker processes with a new configuration
Gracefully shutdown the old worker processes(改变配置文件,平滑地重读配置文件)
USR1 Reopen the log files(重读日志,在日志按月/日分割时有用)
USR2 Upgrade Executable on the fly(平滑地升级)
WINCH Gracefully shutdown the worker processes(优雅地关闭旧的进程(配合USR2来进行升级))

 【测试 HUP】

① 访问  http://192.168.254.100/

② 更改配置文件:

vim /usr/local/nginx/conf/nginx.conf

在 index.html 前加上 test.html。此时 test.html 的优先级要高于 index.html

③ 在 nginx 的 html 目录下新建 test.html:

vim /usr/local/nginx/html/test.html

此时在 nginx 的 html 目录下就多了 test.html 文件:

ls /usr/local/nginx/html/

④ 平滑地重读配置文件:

首先查看 nginx 的进程号 pid:2192

平滑地重读配置文件:

kill -HUP 

重新访问 192.168.254.100:

【另一个测试 HUP】

① 修改 test.html:

<!DOCTYPE html>
<html>
<head>
<meat charset="utf-8">
<title>test HUP</title>
</head>
<body>
test HUP
<script>
window.location.href="/";
</script>
</body>
</html>

导致的结果是访问该页面,该页面会一直刷新:

② 修改配置文件:

vim /usr/local/nginx/conf/nginx.conf

去掉 test.html

此时页面一直在刷新,而内容不变;

③ 再次平滑地重读配置文件:

kill -HUP 

内容在很短时间内改变为 Welcome to nginx!

或者

kill -HUP `cat /usr/local/nginx/logs/nginx.pid`

因为

cat /usr/local/nginx/logs/nginx.pid

输出的就是 nginx 的 pid:2192

进程文件 nginx.pid 是不会变的,而进程号 pid 是会变的。

【测试 USR1】

① 查看 nginx 的 logs 目录,有一个 access.log,它记录了所有对 Web 服务器的访问活动(例如上例中 js 不断刷新页面就会记录到 access.log 中,该文件会一直增涨):

如果要把 access.log 按日期进行备份,不能简单地只把 access.log 更改为 access.log.20150722,然后新建一个 access.log。因为该文件的 inode 是不变的,access.log.20150722 还在继续增涨。

② 要想新的日志写进新的 access.log ,则需要使用 Nginx 信号控制中的 USR1:

kill -USR1 

此时新的日志都写进了新建的 access.log 中,access.log.20150722 的大小则保持不变,完成备份。

Nginx 笔记与总结(2)信号控制的更多相关文章

  1. Nginx网络架构实战学习笔记(一):Nginx简介、安装、信号控制、nginx虚拟主机配置、日志管理、location 语法、Rewrite语法详解

    文章目录 nginx简介 nginx安装 nginx信号控制 nginx虚拟主机配置 日志管理 location 语法 精准匹配的一般匹配 正则匹配 总结 Rewrite语法详解 nginx简介 Ng ...

  2. Nginx 的信号控制

    摘自:Nginx服务器初识:Nginx启动.停止与信号控制 名称 功能 说明 HUP 重启   QUIT 从容关闭   TERM 快速关闭   INT 从容关闭   USR1 切换日志文件 通常用在切 ...

  3. openresty开发系列2--nginx的简单安装,正向、反向代理及常用命令和信号控制介绍

    openresty开发系列2--nginx的简单安装,正向.反向代理及常用命令和信号控制介绍 一.nginx的安装下载及编译安装1.Nginx下载:nginx-1.13.0.tar.gz,下载到:/u ...

  4. nginx 的信号控制概述

    <nginx 在ubuntu 上的启动,停止,重启>中的停止和重启命令基本都是用信号来控制的.这是一些简单的信号控制. 在Nginx服务器中,通常情况都是通过对其发送控制信号进行控制的,除 ...

  5. Nginx 的启动、停止、平滑重启、信号控制和平滑升级

    Nginx 的启动         假设 nginx 安装在 /usr/local/nginx 目录中,那么启动 nginx 的命令就是: [root@localhost ~]# /usr/local ...

  6. Nginx学习——Nginx启动、停止、重启和信号控制以及平滑升级

    1.Nginx 启动与停止 (1)启动方式 启动格式:Nginx可执行文件地址 -c Nginx配置文件地址 /etc/local/nginx/sbin/nginx -c /root/dufy/ngi ...

  7. 运行和控制Nginx——命令行参数和信号

    参考资料: Nginx中文文档: http://www.nginx.cn/nginxchscommandline Nginx的启动.停止.平滑重启.信号控制和平滑升级:http://zachary-g ...

  8. nginx学习之——信号控制和配置

    一.信号控制 1)TERM, INT   Quick shutdown  \\麻溜停掉(暴力停止),一般不常用 // 启动和停止nginx 当前目录:/usr/local/bin/nginx 启动: ...

  9. 【学习笔记】启动Nginx、查看nginx进程、查看nginx服务主进程的方式、Nginx服务可接受的信号、nginx帮助命令、Nginx平滑重启、Nginx服务器的升级

     1.启动nginx的方式: cd /usr/local/nginx ls ./nginx -c nginx.conf 2.查看nginx的进程方式: [root@localhost nginx] ...

随机推荐

  1. 利用github page搭建博客

    为什么选择GitHub Pages? 很多人用 wordpress,你为什么要用 github pages 来搭建? 1.github pages有300M免费空间,资料自己管理,保存可靠: 2.学着 ...

  2. Android数据存储之sharedpreferences与Content Provider

    android中对数据操作包含有: file, sqlite3, Preferences, ContectResolver与ContentProvider前三种数据操作方式都只是针对本应用内数据,程序 ...

  3. oracle 10g 学习之游标使用和异常介绍(11)

    一.游标 1. 使用游标 要求: 打印出 80 部门的所有的员工的工资: salary: xxx declare --1. 定义游标 cursor salary_cursor is select sa ...

  4. Sublime Text : 创建工程

    Sublime Text 可以很方便地管理多个工程.使用Sublime Text的Projects,可以将不同根目录的文件组织起来成为一个工程,而不用将所有的文件都放到一个根目录下面. 1. 创建工程 ...

  5. hdu 1166:敌兵布阵(树状数组 / 线段树,入门练习题)

    敌兵布阵 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submis ...

  6. hdu 1242:Rescue(BFS广搜 + 优先队列)

    Rescue Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Submis ...

  7. freopen()——重定向标准输入输出流

    freopen()——重定向标准输入输出流 头文件:stdio.h 函数原型:FILE * freopen(const char *filename , const char *type ,  FIL ...

  8. SQL 高级查询

    WITH FINISHMAINT (FRAMENO,DELIVEREDDATE) AS ( SELECT DISTINCT RP.FRAMENO, MAX(PRC.DELIVEREDDATE) OVE ...

  9. 项目如何脱离TFS 2010的管理

    在VS 里,文件->源代码管理->更改源代码管理->取消绑定.

  10. Android系统自带样式(@android:style/) (转)

    摘自:http://blog.csdn.net/hongya1109110121/article/details/11985545 在AndroidManifest.xml文件的activity中配置 ...