nginx windows进程_将nginx安装为Windows服务

v2-16df2d5ffefa9c047f33f7ef9b964605_b.jpg

nginx这个服务器软件虽小,但功能强大,是开源软件,有着良好的性能,被很多个人、企业,甚至大型企业所使用!

由于是在Windows下,所以只能双击运行,然后通过以下命令来管理:

Nginx/Win32是运行在一个控制台程序,而非windows服务方式的。服务器方式目前还是开发尝试中,Nginx/Win32可以使用以下开关来管理它:

Nginx -s stop   快速关闭Nginx,可能不保存相关信息,并迅速终止web服务。(快速退出)
Nginx -s quit    平稳关闭Nginx,保存相关信息,有安排的结束web服务。(平滑退出)
Nginx -s reload   因改变了Nginx相关配置,需要重新加载配置而重载。(重新加载配置)
Nginx -s reopen  重新打开日志文件。(重新加载日志)

如果能把它安装成Windows服务运行,那就爽了!!在网上找了个Windows服务安装工具:srvinstw。这个工具是可以把nginx安装成服务,但不能被正常启动,无法运行。只能作罢!

经过一番查找以后,终于找到了解决办法:

这里我们需要用到一个软件:nssm,使用这个软件可以将任意可执行程序安装成服务运行。

软件下载

https://nssm.cc/release/nssm-2.24.zip

将下载的压缩包解压后得到nssm.exe。

安装nginx为服务

我们直接打开cmd执行:

nssm install nginx

在弹出的窗口中输入nginx的路径点击Install即可完成Windows服务的安装。

v2-fd90b529dc96b6dfa62df01216348889_b.jpg

或者,我们可以直接使用Chocolatey这个应用商店直接安装nginx,安装后会自动注入Windows服务。

v2-87c735626cd48dcf084ecb6ade6e981e_b.jpg

但是,当使用windows服务管理器停止Nginix服务后,访问浏览器仍然能看到网站。查看进程,你会发现,Nginx的其中一个进程还在运行!nginx进程(根据nginx.conf的配置worker_processes 1;),Fork出来的进程显然没有被停止,结果就是nginx永远关不掉。因此彻底关闭nginx请使用taskkill命令!

那么我们只好做个stop_nginx脚本来处理nginx停止的所有操作:

@echo off
net stop nginx
taskkill /F /IM nginx.exe>nul

原作者:懒得勤快

原文链接: 将nginx安装为Windows服务_懒得勤快的博客_互联网分享精神

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值