nginx的启动 重启 关闭

nginx启动、重启、关闭

 

一、启动  

cd usr/local/nginx/sbin

./nginx

 

二、重启

  更改配置重启nginx  

kill -HUP 主进程号或进程号文件路径

或者使用

cd /usr/local/nginx/sbin

./nginx -s reload

    判断配置文件是否正确 

 

nginx -t -c /usr/local/nginx/conf/nginx.conf

或者

cd  /usr/local/nginx/sbin

./nginx -t

 

三、关闭

 

  查询nginx主进程号

  ps -ef | grep nginx

  从容停止   kill -QUIT 主进程号

  快速停止   kill -TERM 主进程号

  强制停止   kill -9 nginx

  若nginx.conf配置了pid文件路径,如果没有,则在logs目录下

  kill -信号类型 '/usr/local/nginx/logs/nginx.pid'

 

四、升级

  1、先用新程序替换旧程序文件

  2、kill -USR2 旧版程序的主进程号或者进程文件名

    此时旧的nginx主进程会把自己的进程文件改名为.oldbin,然后执行新版nginx,此时新旧版本同时运行

  3、kill -WINCH 旧版本主进程号

  4、不重载配置启动新/旧工作进程

    kill -HUP 旧/新版本主进程号

    从容关闭旧/新进程

    kill -QUIT 旧/新进程号

    快速关闭旧/新进程

    kill -TERM 旧/新进程号

 

Nginx一般操作:

Windows:

start nginx               # 启动Nginx

nginx.exe -t              #检查配置文件            

nginx.exe -s stop         # 快速停止Nginx,可能并不保存相关信息

nginx.exe -s quit         # 完整有序的停止Nginx,并保存相关信息

nginx.exe -s reload       # 重新载入Nginx,当配置信息修改,需要重新载入这些配置时使用此命令。

nginx.exe -s reopen       # 重新打开日志文件

nginx -v                  # 查看Nginx版本

 

tasklist /fi "imagename eq nginx.exe"

netstat -ano | findstr :8800

 

tasklist /fi "imagename eq nginx.exe"  #查看nginx进程

nginx -t -c /nginx-1.15.2/conf/nginx.conf   #检查配置

 

Linux:

/usr/local/nginx/sbin/nginx -t     # 检查配置

/usr/local/nginx/sbin/nginx -s reload  #平滑重启

kill -QUIT nginx  #杀掉进程

 

切割日志例子

sed -n '/14\/Nov\/2019:03:00:05/','/14\/Nov\/2019:05:00:05/p' access.log  > 3-5.log

cat access.log | awk '$4 >="[14/Nov/2019:03:00:00" && $4 <="[14/Nov/2019:05:02:00"

 

常用查询:

1)总请求数

wc -l  nginx.log |awk '{print $1}'

2)独立IP数

awk '{print $1}' nginx.log|sort |uniq |wc -l

3)每秒客户端请求数 TOP5

awk '{print $6}' nginx.log|sort|uniq -c|sort -rn|head -5

4)访问最频繁IP Top5

awk '{print $1}' nginx.log|sort |uniq -c |sort -nr |head -5

5)访问最频繁的URL TOP5

awk '{print $7}' nginx.log|sort |uniq -c |sort -nr |head -5

6)响应大于5秒的URL TOP5

awk '{if ($7 > 5){print $6}}' nginx.log|sort|uniq -c|sort -rn |head -5

7)HTTP状态码(非200)统计 Top5

awk '{if ($11 != 200){print $11}}' nginx.log|sort|uniq -c|sort -rn|head -5

8)分析请求数大于50000的源IP

cat nginx.log|awk '{print $NF}'|sort |uniq -c |sort -nr|awk '{if ($1 >50000){print $2}}'

 

Websockt 添加nginx:  添加在proxy_pass的下边 有时会报错

proxy_http_version 1.1;

proxy_set_header Upgrade $http_upgrade;

proxy_set_header Connection "Upgrade";

 

必要时修改hostname 文件

 

 

 

 

 

 

添加nginx会去掉带有下划线的Header键值

nginx里的 nginx.conf文件中配置http的部分添加 : underscores_in_headers on;(默认值是off)

 

添加html显示  在location / 模块下新增

   if ($request_filename ~* .*\.(?:htm|html)$)
   {
    add_header Cache-Control "private, no-store, no-cache, must-revalidate, proxy-revalidate";
    }

 

 

Nginx 设置缓存静态资源:location 块平级

     location ~ .*\.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm)$

    {

        expires      1h;

    }

 

 

windows查看tcp:

netstat -ant|find /C /I "TCP"

netstat -ant|find /C /I "TIME_WAIT"

netstat -ant|find /C /I "ESTABLISHED"

 

 

posted @ 2020-10-28 10:51  岁月倾城CTO  阅读(162)  评论(0)    收藏  举报