windows关闭nginx_nginx注册成windows服务的解决方法

eebbcbb9dffa6ff82c2d1612a2200d73.png

之前尝试过将nginx注册成windows服务,有用过微软官方的instsrv/srvany, 以及firedaemon, 虽然可以做服务并启动,但是当你想要停止服务时,就会出现问题。 主要原因在于nginx有一个守护进程,上述的方式只能关闭主进程,多余的进程没法关闭。因此每当用上述的方式时,每次停止/重启服务,都会产生一个多余的nginx进程。非常的不好!

后来发现一个很好的项目:winsw, 可以将可执行文件注册成windows服务,项目的github的名称就是winsw

它的介绍是:A wrapper executable that can be used to host any executable as an Windows service, in a liberal license

用它将nginx注册成服务后,完美解决上述的问题,使用起来也很简单,根据.Net Framework的版本,下载对应的支持版本,然后修改配置文件,再使用对应的指令安装即可。

配置文件的格式如下,

4fe03aac6d83a3ec4503a9320847d42c.png

如果是要部署多个nginx服务,保证id和name保持唯一
根据实际情况进行修改,然后用管理员权限,在当前目录的控制器台中执行

WinSW.NET4.exe install 进行服务安装。

成功后,在操作系统的服务列表中,就可以看到对应的服务了

7ce744896cbd43db992d50bc68a915be.png

重启服务和关闭服务,整体表现符合预期,而且系统里也没有多余的进程.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值