【windows】nginx如何注册为开机自启的服务(WinSW实现)

1. ‌下载 WinSW‌

访问官方 GitHub 发布页:
https://github.com/winsw/winsw/releases

下载最新稳定版(如 WinSW-x64.exe),建议重命名为 nginx-service.exe,便于识别。

复制代码
# 示例:将下载的文件重命名
mv WinSW-x64.exe nginx-service.exe

WinSW 是单文件可执行程序,无需安装,直接使用。

2. ‌创建配置文件 nginx-service.xml‌

在同一目录下创建 nginx-service.xml,内容如下:

html 复制代码
<service>
  <id>nginx</id>
  <name>Nginx Web Server</name>
  <description>High-performance web server with reverse proxy capabilities</description>

  <executable>C:\nginx\nginx.exe</executable>
  <workingdirectory>C:\nginx</workingdirectory>
  <logmode>rotate</logmode>

  <onfailure action="restart" delay="10 sec"/>
  <resetfailure>1 hour</resetfailure>

  <startmode>Automatic</startmode>
  <stopmode>Automatic</stopmode>

  <logpath>C:\nginx\logs</logpath>
  <logmode>roll</logmode>
  <depend>Tcpip</depend>
</service>

关键配置说明:

<id>:服务唯一标识符(必须唯一)

<executable>:Nginx 主程序路径(请确保路径正确)

<workingdirectory>:工作目录,确保 Nginx 能正确加载配置
<startmode>Automatic</startmode>:‌实现开机自启的核心配置‌
<logpath>:指定日志输出目录,便于排查问题

3. ‌安装服务‌

以‌管理员身份‌打开命令提示符(CMD)或 PowerShell,执行:

javascript 复制代码
cd C:\nginx
nginx-service.exe install

成功后会输出:Service installed successfully.

4. ‌启动服务并验证‌

yaml 复制代码
net start nginx
sc query nginx

检查状态是否为 RUNNING,并打开 services.msc,确认:

yaml 复制代码
服务名称‌:Nginx Web Server
启动类型‌:自动
状态‌:已启动

访问 http://localhost,确认页面正常加载。

5. ‌卸载服务‌

yaml 复制代码
nginx-service.exe uninstall

日志与故障排查

WinSW 会自动生成日志文件在 C:\nginx\logs\ 目录下,文件名为:

nginx-service.out.log:标准输出

nginx-service.err.log:错误输出

若服务无法启动,请检查:

Nginx 配置是否正确:

yaml 复制代码
C:\nginx\nginx.exe -t

路径是否包含空格或中文?建议使用 C:\nginx 这类简洁路径。

是否以管理员身份运行 install 命令?

相关推荐
qq_316411034 小时前
商用冷柜售后报修运维管理系统开发案例
运维
智码看视界4 小时前
Day59-阿里云ACK实战:生产级K8s集群部署与运维
运维·阿里云·kubernetes·k8s·日志监控·容器运维·阿里云ack
码视野6 小时前
基于 Vue3 + Element Plus 的【智慧新能源汽车充电桩运维调度与分时共享租赁系统】设计与实现(附完整源码与PRD)
运维·人工智能·汽车·vue3
qq_426003966 小时前
【UI自动化测试】UI自动化报错解决方案
运维·ui·自动化
网安蟹佬霸6 小时前
WAF绕过技术实战:从规则检测到编码绕过全指南(2026最新版,附Payload集与自动化脚本)
运维·安全·网络安全·架构·自动化·网安
小杨不想秃头6 小时前
信息安全工程师教程第二章密码学
运维·服务器·密码学
I'mChloe6 小时前
WGCLOUD怎么监控多台服务器?从Server、Agent 部署到监控面板实战
运维·服务器
Android系统攻城狮7 小时前
Linux PipeWire深度解析之pw_init调用流程与实战(八十三)
linux·运维·服务器·音频进阶·pipewire音频进阶
国科安芯7 小时前
轨道供电韧性:ASP4644四通道降压架构在低轨卫星平台电源管理中的适用性分析
运维·网络·数据库·嵌入式硬件·架构·状态模式·低轨卫星星座
Python自动化直播8 小时前
周末测试直播自动化时,发现一个棘手的并发问题
运维·自动化