像Linux的systemd一样创建一个windows系统服务,让nginx服务随windows系统启动而自动启动服务
像Linux的systemd一样创建一个windows系统服务,让nginx服务随windows系统启动而自动启动服务
windows前置条件
- choco【包管理工具】
- nssm 【windows下的服务注册管理命令行工具】
- windows版本的nginx可执行程序
环境准备
windwos版本nginx1.26.3官方下载链接
执行步骤
我们首先在windows系统上安装choco 包管理工具
接着通过choco包管理工具安装nssm
安装好nssm后,通过该工具,将nginx注册成windows系统服务,并配置让nginx服务随windows系统启动而自动启动
安装choco
以管理员权限打开powershell,在打开的powershell终端中执行以下命令安装choco

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
安装nssm
通过choco安装nssm
choco install nssm -y

将nginx注册成windows系统服务
将windows版的nginx压缩包下载到windows本地,解压,将解压后的nginx目录,移动到软件存放位置。记住解压后nginx目录的存放位置。


以管理员权限打开powershell,执行以下命令开始注册windows系统服务

nssm install nginx
在弹出的窗口中选择我们存放nginx目录的位置,选择nginx.exe,选择好配置文件,示例如下图:

弹出服务配置成功提示

配置nginx服务随windows系统启动而自动启动
打开windows运行框,执行services.msc

在打开的服务管理中找到我们新注册的nginx服务

在找到的nginx服务上鼠标右击,打开nginx服务的属性

将启动类型改为自动,确定,即可让nginx服务随windows系统启动而自动启动了。

