目录:
- 1、如何关闭nginx服务 system
- 2、【nginx】nginx: worker process is shutting down
- 3、node静态资源nginx部署部署后无法访问
- 4、如何使用php脚本停止nginx服务
如何关闭nginx服务 system
nginx需要监听80端口,但是在win7下,80端口会被其他程序占用了,所以启动nginx的时候失败,而出现上面的错误
80端口是用于HTTP的访问端口,被System占用了,那我们就去禁用它
一:打开注册表:regedit
二:找到:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP
三:找到一个REG_DWORD类型的项Start,将其改为0
四:重启系统,System进程不会占用80端口
如果 你安装SQL Server Reporting Service,请在服务中,把该服务设置为手动
一:运行,services.msc
二:找到SQL Server Reporting Service 设置成手动,确定
重启计算机,然后启动nginx,
命令行cd到nginx的目录下,
start nginx
【nginx】nginx: worker process is shutting down
nginx -s reload之后, nginx 正在平滑的重启。
wroker有正在处理的连接,等处理结束,该worker就会退出(退出之前,该worker不会处理新的连接)。
等调用对应nginx 的进程结束之后,这个process就会重启了。
大约20分钟后,这些进程都变成了 'worker process' 了。
使用nginx作为前端代理,在reload nginx的时候,发现nginx会一直处于shutting状态,当reload nginx次数多了以后,cup会飙升到100%, gateway的状态也会处于busy状态。
现象如下:
跟踪socket连接发现,此 nginx 进程,一直保持跟gateway的连接。
当nginx reload的次数多的时候,gateway就会处于busy状态。
如果把gateway restart了,gateway的进程id会改变,nginx中的shutting down 状态的进程也会消失,但是gateway restart就断掉和客户端的连接了。
看起来nginx reload后不会断开连接,然后gateway reload也不会断开连接(gateway restart会断开连接),
然后二者仍然保持着连接。
nginx和gateway都reload,那么nginx会产生新的worker进程,但是应该shutdown的老进程因为和gateway还有连接,所以也不会销毁,这样时间长了会有很多处于shutting状态的进程,这些进程都会占用资源。
重启的话就会把客户端的连接断开重连,会把连接初始化时给客户端发送的消息重新发一遍。
nginx worker shutting down状态超时退出配置
nginx reload之后有时会遇到shutting down状态worker过多的现象,尤其是websocket连接的worker很长时间无法退出。
如何解决过多worker长时间处于shutting down状态,不退出问题呢?
使用worker_shutdown_timeout配置,该配置配置在MAIN_CONF中,配置参数为时间。
如配置为1h,shutting down状态的worker一小时之后自动退出。
谈谈 nginx 信号集
nginx: worker process is shutting down
worker_shutdown_timeout
是什么让你的 nginx 服务退出这么慢?
从websocket服务的nginx配置说起
我眼里的 nginx
如何优雅地关闭worker进程?
一次百万长连接压测Nginx内存溢出问题
DevOps nginx: worker process is shutting down 原因解析
nginx处理websocket连接
NGINX as a WebSocket Proxy
Nginx does not shut down when websocket connections are still open
nginx的graceful shutdown和worker shutdown timeout
worker_shutdown_timeout 指令
;p=757
关于k8s下使用Ingress保持长连接的异常情况排查
nginx热加载时已建立的websocket连接是否中断?
Nginx reload了,连接怎么办?
worker_shutdown_timeout" directive did not work websocket
worker_shutdown_timeout(seconds) - Set the timeout for worker shutdown
node静态资源nginx部署部署后无法访问
1、首先确认静态资源文件夹是否已经放在与 nginx.exe 同级的目录中。
2、确认 conf 文件夹中 nginx.conf 文件里 location 中 root 后面是否填写正确的静态资源文件名。
3、Nginx 服务器的目录路径不能有中文,检查路径中是否有中文,有的话,需要移出来。
4、确认以上修改没有问题后,进入任务管理器,点击详细信息,找到所有的 nginx.exe 停止运行,并清理浏览器上的缓存,重启 nginx 服务器。
5.若以上操作均没有问题,那么最后可能导致的原因是防火墙,检查防火墙是否关闭。
如何使用php脚本停止nginx服务
是什么服务器,Linux服务器想要停止nginx得要root权限,可以用
nginx -s stop
php的话可以用system('nginx -s stop'),但前提是你php得用root执行并且没有禁用system函数。
评论前必须登录!
注册