Nginx命令总结
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
Nginx命令总结
查看Nginx安装和启动文件的路径
-
whereis nginx
查看当前正在启动中的nginx使用的配置文件路径
-
/usr/local/nginx/sbin/nginx -t 或者 在本地打开nginx根目录使用 nginx -t
在Linux服务器默认安装位置下查看大多数一般会安装在默认位置下
-
/usr/local/openresty/nginx 或/usr/local/nginx
查看nginx运行进程mast process 后面一般是nginx 的安装目录
-
ps -aux|grep nginx || ps -C nginx -o pid
查看nginx运行进程执行ls -l /proc/进程号/exe ,然后会打印出安装/运行位置
-
ps -aux|grep nginx -> ls -l /proc/进程号/exe
通过相应的进程ID(比如4562查询当前运行的nginx路径
-
ll /proc/4562/exe
启动、检查配置文件、重载、关闭
-
- 直接启动进入nginx目录执行启动命令
cd /usr/local/nginx/sbin --> ./nginx
或者/usr/local/nginx/sbin/nginx
- 指定配置文件方式启动进入nginx目录执行启动命令
cd /usr/local/nginx/sbin --> ./nginx -c /usr/local/nginx/conf/nginx.conf
或者/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
- 检查nginx配置文件进入nginx目录
cd /usr/local/nginx/sbin
检查配置文件是否有语法操作
./nginx -t
或者指定配置文件 ./nginx -t -c /usr/local/nginx/conf/nginx.conf
- 平滑的重启修改配置后重新加载配置
cd /usr/local/nginx/sbin --> ./nginx -s reload
原理说明
nginx工作中包括一个master进程多个worker进程。worker进程负责具体的http等相关工作master进程主要是进行控制。
nginx -s reload 命令加载修改后的配置文件,命令下达后发生如下事件
Nginx的master进程检查配置文件的正确性若是错误则返回错误信息nginx继续采用原配置文件进行工作因为worker未受到影响
Nginx启动新的worker进程采用新的配置文件
Nginx将新的请求分配新的worker进程
Nginx等待以前的worker进程的全部请求已经都返回后关闭相关worker进程
重复上面过程知道全部旧的worker进程都被关闭掉。
所以重启之后master的进程号不变worker的进程号会改变。 - 关闭nginx
- 快速停止nginx
cd /usr/local/nginx/sbin --> ./nginx -s stop
- 完整有序的停止nginx这个命令会等待所有请求结束后再关闭nginx
./nginx -s quit
- reopen重新打开日志文件
cd /usr/local/nginx/sbin --> ./nginx -s reopen
应用场景
当需要切割 nginx 日志文件时我们需要用到 nginx -s reopen 命令用来完成新日志的生成。当日志文件太大时一般我们是按天切割文件也就是按天做个分类每天的日志放在一个文件中并用日期命令方便日后查找。
但时我们简单的把文件移动并重新命令是无法及时生效的因为在 linux 下的文件句柄文件在被打开的情况下 mv 移走文件操作这个文件的进程还是有这个文件的信息原进程还是读写原来的文件简单的 mv 无法生效也就无法完成我们想要的文件分隔。
一般我们需要两步
1、移走文件并重命名
2、利用 nginx 的 reopen 功能完成新日志文件的生成。
windows 查看 nginx 是否启动
-
- 常用指令
start nginx
==> 启动start nginx
==> 停止nginx.exe -s reopen
==> 重启nginxexe -s reload
==> 重新加载配置文件
- 确认启动
- 任务管理器查看是否有nginx进程存在进程号记录在 nginx.pid
- nginx 目录 logs -> nginx.pid 文件是否存在启动则自动创建停止则自动删除。
需要 conf 文件配置 pid logs/nginx.pid - 浏览器 localhost:80查看是否能访问通。默认80端口
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |