windows下部署.net8 开发的WebApi程序-非IIS模式下-nssm

2025-07-15  乐帮网

iis .net nssm

假设已经开发并发布了一个WebApi程序,名称定为vkt.webapi,发布过程都保持默认值即可。得到一个发布后的文件夹vkt.webapi,一般情况下在Windows下首选IIS做为宿主程序,只需要新建站点把应用程序池设置为托管模式,就可以正常的跑起来。某些情况下不能用IIS时,例如严格离线情况下,我们就得选择其它宿主程序,复杂一点我们可以自己写一个服务,以上情况不在本篇文章范围内,下面将使用nssm来做为宿主进行配置。下面是详细步骤,简单可靠。
 

一、下载nssm
官网下载:https://nssm.cc/download 下载后不用安装,解压直接使用win64/nssm.exe,我的目标windows是x64的。 不要嫌弃软件老,windows的服务从诞生之初就没有大变过,所以放心可用。如果不能下载可从我网盘下载:nssm-2.24.zip
链接: https://pan.baidu.com/s/1bfDIHN5ioy7tGgH98PNLtw?pwd=3v41 提取码: 3v41

二、注册成服务
将 nssm.exe 放入项目目录(vkt.webapi文件夹内),随应用一起复制到服务器上(无需安装)。 然后以管理员身份打开命令行(cmd)切换到程序目录(D:\@Publish\vkt.webapi文件夹内)分别执行以下命令:
       
# 安装服务

nssm install vkt.webapi "D:\@Publish\vkt.webapi\vkt.webapi.exe"

# 设置参数

nssm set vkt.webapi AppParameters "--environment Production --urls http://*:9000"

# 设置工作目录(重要!避免找不到配置文件)

nssm set vkt.webapi AppDirectory "D:\@Publish\vkt.webapi"

# 启动服务

nssm start vkt.webapi

经过以上命令我们的发布已经完成,使用http://localhost:9000来访问api。

 
 三、其它有用命令
启动服务    nssm start vkt.webapi
停止服务    nssm stop vkt.webapi
重启服务    nssm restart vkt.webapi
查看状态    nssm status vkt.webapi
卸载服务    nssm remove vkt.webapi confirm

一个非常有用的工具,题外话,此时注册的服务 启动类型是:自动 不用额外设置。

公众号二维码

关注我的微信公众号
在公众号里留言交流
投稿邮箱:1052839972@qq.com

庭院深深深几许?杨柳堆烟,帘幕无重数。
玉勒雕鞍游冶处,楼高不见章台路。
雨横风狂三月暮。门掩黄昏,无计留春住。
泪眼问花花不语,乱红飞过秋千去。

欧阳修

付款二维码

如果感觉对您有帮助
欢迎向作者提供捐赠
这将是创作的最大动力