windows下nginx 配置 开机自启动

发布时间 2023-11-06 17:06:15作者: CrossPython

一、windows系统下Nginx安装启动流程:
二、设置Nginx开机自动启动
1、自启动工具下载
2、自启动工具安装
3、把nginx加入到windows服务中
最后一句话
一、windows系统下Nginx安装启动流程:
这是我们在正常环境中,Windows下Nginx的安装及启动方式

1、到nginx官网下载相应版本(http://nginx.org/en/download.html),我这里放到了D:\work\nginx\路径下进行解压。

2、启动Nginx,两种方法:

直接双击nginx.exe,会看到一个黑色的弹窗一闪而过,启动完成。
打开cmd命令窗口,切换到nginx目录下,输入命令 nginx.exe 或者 start nginx ,回车即可。
3、检查nginx是否启动成功。

直接在浏览器地址栏输入网址 http://localhost:80,回车,出现以下页面说明启动成功。


也可以在cmd命令窗口输入命令 tasklist /fi “imagename eq nginx.exe” ,出现如下结果说明启动成功。

4、关闭nginx

  如果使用cmd命令窗口启动nginx,关闭掉cmd窗口并不能结束nginx进程,可使用两种方法关闭nginx

cmd命令行输入nginx命令 nginx -s stop(快速关闭nginx)
nginx -s quit(完整关闭nginx,保留操作日志)。
  但在我们实际部署过程中,常常会有机器死机的情况,一死机重启nginx服务就没了,手动重新打开?不存在的,有那时间我去摸摸鱼不香么!

  因此nginx的开机自启动就显得格外重要了??。

二、设置Nginx开机自动启动
  我们借助Windows Service Wrapper小工具,将Nginx转换为Windows服务,在服务中心配置自启动,从而在开机时windows自行启动Nginx服务。

1、自启动工具下载
工具下载URL:https://github.com/winsw/winsw/releases

如下图,为windows32位和64位的工具文件

上面github需要外网访问比较快,没有外网的同学们,我也给你们下好了,自行下载吧~

32位:WinSW-x86.exe (提取码:0915)
64位:WinSW-x64.exe (提取码:0915)
2、自启动工具安装
步骤一:下载后将该工具放入Nginx的安装目录下,并且将其重命名为 nginx-service.exe ;

步骤二:在nginx安装目录下新建服务日志文件夹server-logs文件夹,用来存放nginx服务相关日志。

步骤三:在该目录下新建 nginx-service.xml 文件,写入配置信息,配置好了之后就可以通过这个将Nginx注册为Windows服务了。

文件配置内容如下:重点包括三个,日志文件位置、启动命令、关闭命令;我nginx目录为:D:\work\nginx\nginx-1.18.0,同学们根据自己的目录作相应修改。

<!-- nginx-service.xml -->
<service>
<id>nginx</id>
<name>nginx</name>
<description>nginx</description>
<logpath>D:\work\nginx\nginx-1.18.0\server-logs\</logpath>
<logmode>roll</logmode>
<depend></depend>
<executable>D:\work\nginx\nginx-1.18.0\nginx.exe</executable>
<stopexecutable>D:\work\nginx\nginx-1.18.0\nginx.exe -s stop</stopexecutable>
</service>


3、把nginx加入到windows服务中
  以上内容配置好了之后,在nginx安装目录下以管理员运行命令:.\nginx-service.exe install 就成功将其注册为Windows服务了。这时我们就可以在Windows任务管理器的服务中查看到nginx服务了。


后续修改windows服务的流程同学们应该都清楚了,将启动方式改成自动即可;


然后启动nginx服务


  启动后通过http://localhost:80 或 命令 tasklist /fi "imagename eq nginx.exe" 检查是否启动成功

附:工具其他命令

效果 命令
注册系统服务命令 nginx-service.exe install
删除已注册的系统服务命令 nginx-service.exe uninstall
停止对应的系统服务命令 nginx-service.exe stop
启动对应的系统服务命令 nginx-service.exe start