Windows下将Nginx设置注册安装为服务方法!

article/2025/6/7 12:30:43

一、需求背景

每次启动 Nginx 都要去到 Nginx 安装目录下寻找 nginx.exe 文件点击,很是麻烦。

并且远程登录桌面,有时注销用户,会把在当前用户打开的nginx关闭了。

于是考虑可不可以跟其它服务一样能够开机自启?显然是可以的。把 Nginx 设置为一个 windows 服务便可以解决此问题。

下文环境为Windows 2012 R2或Windows 2019 R2或者Windows 2016 R2。

nginx下载路径:nginx: download

二、Nginx 设置为服务

主要分为两大步骤,其一准备好设置为服务的文件,其二安装为服务。

1、设置为服务后参考目录如下:

2、文件准备

Index of releases/com/sun/winsw/winsw

下载最新版本2.9.0,选择winsw-2.9.0-bin.exe,将winsw-2.9.0-bin.exe文件复制到nginx解压的根目录,重命名为 nginx-service.exe

(1)准备nginx-service.exe

nginx 安装下载默认已知。接下来首先选择合适版本下载Windows Service Wrapper工具,该工具可设置nginx为windows服务。

下载后把下载的winsw-x.x.x-bin.exe 文件放在Nginx安装目录(D:\Environment\nginx-1.22.0),修改名称为nginx-service.exe,然后分别创建nginx-service.exe.config,nginx-service.xml文件,把这两个文件也放在Nginx安装目录下。注意安装目录不要带有空格,比如放在Program Files,可能会报错

(2)准备nginx-service.exe.config文件

创建文件nginx-service.exe.config内容如下:

nginx-service.exe.config内容如下:

<configuration>
<startup>
<supportedRuntime version="v2.0.50727" />
<supportedRuntime version="v4.0" />
</startup>
<runtime>
<generatePublisherEvidence enabled="false"/> 
</runtime>
</configuration>
(3)准备nginx-service.xml文件

创建文件nginx-service.xml内容如下:

nginx-service.xml内容如下(根据实际情况对路径进行调整,路径不要含有空格):

<service><id>nginx</id><name>Nginx Service</name><description>High Performance Nginx Service</description><logpath>D:\nginx-1.28.0\logs</logpath><log mode="roll-by-size"><sizeThreshold>10240</sizeThreshold><keepFiles>8</keepFiles></log><executable>D:\nginx-1.28.0\nginx.exe</executable><startarguments>-p D:\nginx-1.28.0</startarguments><stopexecutable>D:\nginx-1.28.0\nginx.exe</stopexecutable><stoparguments>-p D:\nginx-1.28.0 -s stop</stoparguments>
</service>

3、安装 Nginx 服务

(1)安装服务

进入cmd命令行到nginx目录下输入下行命令安装服务

nginx-service.exe install
(2)可能遇到的问题

新电脑可能会遇到此问题,下载并安装即可。未出现忽略即可。

预计5-10分钟左右。

下载完成后进行安装出现如下。

(2)设置开机自启

然后去服务查看。默认是停止状态。

可点击启动,或者右击打开服务。然后进入下面界面可以直击启动,也可右击点击属性进一步设置。如根据需要设置为自动启动。

(3)测试

重启电脑,但不要登录用户,查看代理端口是否通(telnet 192.168.20.253 8080);登录用户,查看服务是否启动。

3、扩展

(1)删除nginx服务
sc delete 服务名
(2)可能遇到的其他问题

Niginx Service服务无法启动 如错误1067 进程意外终止
可能是端口监听代理出现冲突

Nginx-xxx\logs下查看错误日志,然后根据错误日志查找解决方案。
注意:每次修改完nginx.conf文件,需重新启动Niginx Service服务,方可生效。

(3)启动 nginx 脚本

nginx_start.bat

@echo off
::set location="C:\nginx-1.22.1"
cd /d %~dp0
start nginx
(4)关闭 nginx 脚本

nginx_stop.bat

@echo off
::set location="C:\nginx-1.22.1"
cd /d %~dp0
nginx.exe -s stop

http://www.hkcw.cn/article/CGbGeRgkDp.shtml

相关文章

web第九次课后作业--SpringBoot基于mybatis实现对数据库的操作

前言 在前面我们学习MySQL数据库时&#xff0c;都是利用图形化客户端工具(如&#xff1a;idea、datagrip)&#xff0c;来操作数据库的。 在客户端工具中&#xff0c;编写增删改查的SQL语句&#xff0c;发给MySQL数据库管理系统&#xff0c;由数据库管理系统执行SQL语句并返回执…

SpringBoot+XXL-JOB:高效定时任务管理

一、前言 在现代应用程序中&#xff0c;定时任务是不可或缺的一部分。Spring Boot 和 XXL-Job 为你提供了一个强大的工具组合&#xff0c;以简化任务调度和管理。本文将带领你探索如何将这两者集成在一起&#xff0c;实现高效的定时任务管理。无论你是初学者还是有经验的开发者…

java-spring

入门案例 通过bean创建对象 先通过spring的ClassPathXmlApplicationContext读取xml文件 ,然后通过getbean()函数获取对象&#xff0c;进行操作通过反射机制&#xff0c;吸纳Class的函数forName(class属性)创建对象&#xff0c;然后clazz.getDeclaredConstructor().newinstanc…

springboot @value

#springboot value value 可以读取 yaml 中 的数据

简单爬虫框架实现

1. 框架功能概述 (1) HttpSession 类&#xff1a;请求管理 功能&#xff1a;封装 requests 库&#xff0c;实现带重试机制的 HTTP 请求&#xff08;GET/POST&#xff09;。关键特性&#xff1a; 自动处理 429&#xff08;请求过多&#xff09;、5xx&#xff08;服务器错误&am…

欢乐熊大话蓝牙知识14:用 STM32 或 EFR32 实现 BLE 通信模块:从0到蓝牙,你也能搞!

&#x1f680; 用 STM32 或 EFR32 实现 BLE 通信模块&#xff1a;从0到蓝牙&#xff0c;你也能搞&#xff01; “我能不能自己用 STM32 或 EFR32 实现一个 BLE 模块&#xff1f;” 答案当然是&#xff1a;能&#xff01;还能很帅&#xff01; &#x1f468;‍&#x1f3ed; 前…

网络攻防技术六:拒绝服务攻击

文章目录 一、拒绝服务攻击概述1、按攻击目标分类2、按攻击方式分类3、按受害者类型分类4、按攻击是否直接针对受害者分类5、按属性分类6、按舞厅分类7、按攻击机制分类 二、剧毒包型拒绝服务攻击1、碎片攻击2、Ping of Death攻击(ICMP Bug攻击&#xff09;3、Land攻击4、循环攻…

阿里云无影云桌面深度测评

阿里云无影桌面深度测评&#xff1a;解锁云端工作“新范式”的“未来之钥”&#xff01; 在数字化浪潮席卷全球的2025年&#xff0c;远程办公与混合办公已不再是权宜之计&#xff0c;而是职场不可逆转的新常态。然而&#xff0c;如何确保员工无论身在何处&#xff0c;都能拥有…

R²AIN SUITE AI知识库助力中国制造业数字化转型

一、市场现状&#xff1a;理性增长中的结构性机遇 走进2025年的中国制造业车间&#xff0c;你会看到这样的矛盾图景&#xff1a;一边是机器人手臂精准焊接的火花四溅&#xff0c;另一边是老师傅对着五套不同系统的屏幕皱眉记录数据。这种割裂感正是当前数字化转型深水区的真实…

Java函数式编程(下)

四、实际应用 1. 数据统计分析 示例1&#xff1a;商品订单数据统计分析 package com.itheima.day4.analysis;import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.time.YearMonth; import java.ti…

Java 检查一条线是否与圆接触或相交(Check if a line touches or intersects a circle)

给定一个圆的圆心坐标、半径 > 1 的圆心坐标以及一条直线的方程。任务是检查给定的直线是否与圆相交。有三种可能性&#xff1a; 1、线与圆相交。 2、线与圆相切。 3、线在圆外。 注意&#xff1a;直线的一般方程是 a*x b*y c 0&#xff0c;因此输入中只给出常数 a、b、…

typescript的Interface和Type

类型别名和接口非常相似&#xff0c;在大多数情况下你可以在它们之间自由选择。 几乎所有的 interface 功能都可以在 type 中使用&#xff0c;关键区别在于不能重新开放类型以添加新的属性&#xff0c;而接口始终是可扩展的。 // window.ts.transpileModule(src, {}); 这是调…

(17)课36:窗口函数的例题:例三登录时间与连续三天登录,例四球员的进球时刻连续进球。

&#xff08;89&#xff09;例三登录时间 &#xff1a; 保留代码版本 &#xff1a; CREATE TABLE sql_8( user_id varchar(2), login_date date ); insert into sql_8(user_id,login_date) values(A,2024-09-02),(A,2024-09-03),(A,2024-09-04),(B,2023-11-25),(B,2023-12- 3…

go语言基础|slice入门

slice slice介绍 slice中文叫切片&#xff0c;是go官方提供的一个可变数组&#xff0c;是一个轻量级的数据结构&#xff0c;功能上和c的vector&#xff0c;Java的ArrayList差不多。 slice和数组是有一些区别的&#xff0c;是为了弥补数组的一些不足而诞生的数据结构。最大的…

CodeTop100 Day21

今天这三题是二叉树中简单的题了&#xff0c;但也算是常考题 61、对称二叉树101 class Solution {public boolean isSymmetric(TreeNode root) {return ismirror(root,root);}public boolean ismirror(TreeNode t1,TreeNode t2){if(t1null&&t2null){return true;}if(t…

机器学习——主成分分析(PCA)

一、PCA思想 1.1 PCA定义 PCA&#xff08;Principal Component Analysis&#xff0c;主成分分析&#xff09;是一种统计学方法&#xff0c;用于对数据进行降维处理。它通过线性变换将原始数据转换到一个新的坐标系统中&#xff0c;使得在这个新坐标系下&#xff0c;数据的方差…

ONLYOFFICE 与 LocalAI:在 Ubuntu 上搭建 AI 文档编辑环境

如果你希望在本地 Ubuntu 设备上使用 AI 模型编辑文档、电子表格和演示文稿&#xff0c;ONLYOFFICE 桌面编辑器 与 GPT4ALL 的搭配并不是唯一的选择。 还有另一个本地 AI 平台可供选择。它安装方便&#xff0c;并可以通过 AI 模型处理本地办公文件。这个平台叫做 LocalAI&…

【OCCT+ImGUI系列】011-Poly-Poly_Triangle三角形面片

Poly_Triangle 是什么&#xff1f; Poly_Triangle 是一个非常轻量的类&#xff0c;用于表示一个三角网格中的单个三角形面片。它是构成 Poly_Triangulation&#xff08;三角网格对象&#xff09;的基本单位之一。之后会写关于碰撞检测的相关文章&#xff0c;三角面片是非常重要…

分布式拜占庭容错算法——权益证明(PoS)算法详解

Java 实现权益证明&#xff08;PoS&#xff09;算法详解 一、PoS 核心机制 #mermaid-svg-8VcpJQY92Jtxe9m1 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-8VcpJQY92Jtxe9m1 .error-icon{fill:#552222;}#mermaid-s…

Pycharm的使用技巧总结

目录 一、高效便捷的快捷键 二、界面汉化处理 1.设置 2.插件 3.汉化插件安装 三、修改字体大小、颜色 1.选择文件-设置 2.选择编辑器-配色方案-python 3.修改注释行颜色 4.修改编辑器字体颜色 一、高效便捷的快捷键 序号快捷键功能场景效果1Ctrl /快速注释/取消注释…