2024-12-21 22:52:23
,某些文章具有时效性,若有错误或已失效,请在文末留言。WinSW(Windows Service Wrapper)是一款轻量级的、强大的开源工具,可以将脚本、exe、jar等任何可执行文件设置为 Windows 服务。这意味着,原本设计为命令行应用或需要手动启动的程序,可以通过 WinSW 配置成为能够在 Windows 系统后台自动启动、停止、重启的服务,而无需用户登录或进行额外的手动干预。
WinSW 的工作原理是读取一个XML配置文件(通常命名为winsw.xml),在这个配置文件中定义了服务的名称、可执行文件路径、启动参数、服务描述、日志配置等信息。然后,通过运行 WinSW 提供的exe文件(如WinSW-x64),根据XML配置来管理对应的应用程序作为服务。WinSW 的设计使其具有高度的灵活性和扩展性。
功能特色
1、跨平台兼容性:尽管主要面向 Windows 系统,但 WinSW 也可以在使用Mono的Unix-like系统上工作
2、简单配置:仅需编辑XML文件即可快速设置
3、日志记录:支持自定义日志输出位置和级别,便于故障排查
4、灵活的进程管理:允许用户自定义启动、停止、重启命令,以及相关的错误处理逻辑
5、易于集成:由于其简单易用的特性,WinSW 常被用于Java应用、Node.js应用,以及其他需要作为后台服务运行的场景
下载地址
WinSW官网:https://github.com/winsw/winsw/releases
无法打开 GitHub 地址的同学们,可以从下方站长分享的网盘中下载!
●普通下载:https://url57.ctfile.com/d/16898257-64401910-83e062?p=1140,访问密码:1140
●其它网盘:
使用指南
下面,十一张(www.11zhang.com)以 nginx.exe 应用程序作为 Windows 服务安装为例进行讲解。
1、在 Nginx 安装目录下,添加 WinSW 程序(nginx-service.exe)和对应的 xml 文件(nginx-service.xml),两者的名字需要一致,如图所示:
①将下载的 WinSW-x64.exe 文件复制到 Nginx 安装目录下并重命名为:nginx-service.exe
②在 Nginx 安装目录中新建一个名称为 nginx-service.xml 的xml文件(必须要和 WinSW-x64.exe 重命名的 nginx-service.exe 名称一致),目的是让WinSW去读取和自己相同名称的xml文件中的配置
2、其中,nginx-service.xml 配置文件内容如下:
<!-- nginx-service.xml -->
<service>
<id>nginx</id>
<name>nginx</name>
<description>nginx</description>
<logpath>C:\nginx-1.24.0</logpath>
<logmode>roll</logmode>
<depend></depend>
<executable>C:\nginx-1.24.0\nginx.exe</executable>
<stopexecutable>C:\nginx-1.24.0\nginx.exe -s stop</stopexecutable>
</service>
标签名 | 作用 |
---|---|
id | 服务ID,在Windows系统中必须唯一的系统标识 |
name | 服务显示名称,不能使用中文,仅限英文、数字、横线等 |
description | 服务的描述信息,描述服务的作用 |
logpath | 配置日志路径 |
logmode | 日志输出模式(如滚动日志),默认为append |
executable | 启动可执行文件的路径,如果配置了Java环境变量,可以直接使用iava替代,否则使用全路径 |
env | 可设置环境变量 |
arguments | 传递给可执行文件的启动参数(如果有) |
startmode | 指定Windows服务的启动模式,它可以是下列值之一:开机、系统、自动或手动,默认值是“Automatic” |
stopexecutable | 指定停止服务时执行的命令(可选) |
3、之后,通过命令行使用 nginx-service.exe 和对应的 nginx-service.xml 文件来安装、启动、停止或卸载服务。
命令 | 效果 |
---|---|
***.exe install | 注册服务 |
***.exe uninstall | 卸载服务服务 |
***.exe stop | 停止服务 |
***.exe start | 启动服务 |
***.exe restart | 重启服务 |
***.exe status | 查看服务状态 |
●版权归原作者和机构所有,严禁商用,否则产生的一切后果将由您自己承担
●如果您不喜欢本站有您信息的存在,请邮件告知我们予以删除
暂无评论内容