使用 winsw 将 nginx 注册成windows系统服务,开机自启

使用 WinSW 将 nginx 注册成windows系统服务,开机自启

今天在windows服务器部署了nginx,但是系统重启总是需要手动启动nginx,比较麻烦, 于是打算注册成系统服务,但是nginx在windows上没这个功能,需要用额外的工具进行注册。

WinSW介绍

官方介绍如下:

WinSW is an executable binary, which can be used to wrap and manage a custom process as a Windows service.

现实生活中,我们使用windows系统的电脑的时候,可能会遇到这么一种情况:想把一些应用程序添加为开机启动项。对于有图形界面的应用程序,一般不存在问题。但是如果想运行命令行应用程序,就不是那么方便了。一种笨办法就是写个bat,放到启动文件夹里,就可以开机启动了。开机之后,你就会发现,这样会一直显示着一个CMD窗口,而且这个窗口不能关,关了程序就停了。

其实Windows系统自带后台程序管理的功能,也就是我们经常用到的服务。但是Windows的服务只有程序的开发者在写程序的时候引用到这个功能,我们才能利用服务来控制程序的启动和关闭。对于一般的命令行程序来说,没办法利用服务。

WinSW下载

github下载:github winsw

点击releases

在这里插入图片描述

选个版本

在这里插入图片描述

根据系统选择

在这里插入图片描述

服务注册

1.把WinSW.NET4.exe重命名为install-service.exe(名称可以任意命名)复制到nginx的根目录下

在这里插入图片描述

2.在nignx的根目录下新建个install-service.xml(必须和前面的install-service.exe一致),编辑内容

<service>

 <id>nginx</id>

 <name>nginx</name>

 <description>nginx</description>

 <logpath>E:\nginx-1.19.2</logpath>

 <logmode>roll</logmode>

 <depend></depend>

  <executable>E:\nginx-1.19.2\nginx.exe</executable>

  <stopexecutable>E:\nginx-1.19.2\nginx.exe -s stop</stopexecutable>

</service>

3.命令行进入nginx根目录执行如下命令:

install-service.exe install

问题传送门:您必须首先安装.NET Framework 4版本

杀毒软件报警选择允许

在这里插入图片描述
nginx注册成功

在这里插入图片描述
服务中可以看到我们注册的nginx服务了
在这里插入图片描述

问题解决


天下英雄出我辈,一入江湖岁月催
我是「无间行者」,努力把实践过的解决方案分享给大家
如果这篇文章对你有用,一个赞、一个评论、一个收藏,我都很开心
码字不易,给点鼓励吧,让我知道你在看

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

無间行者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值