1. 下载微软的2个工具: instsrv.exe、srvany.exe 
去微软网站下载安装Windows Server 2003 Resource Kit Tools(rktools.exe),它包括标题提及的所有必要的工具,下载完安装好。

?http://download.microsoft.com/download/8/e/c/8ec3a7d8-05b4-440a-a71e-ca3ee25fe057/rktools.exe

2. 运行命令 
在rktools安装目录下(一般在C:\Program Files\Windows Resource Kits\Tools目录)可以发现这两个程序.在运行下面命令之前,确保将srvany.exe复制到nginx的安装(解压)目录下,然后运行:

Command代码

instsrv Nginx D:\nginx\srvany.exe

这样就安装了一个名为Nginx的服务。也就是将srvany.exe注册成一个服务Nginx。Net start Nginx时,肯定会运行srvany.exe。

3. 配置Nginx的运行参数:目的是运行srvany.exe时,附带运行D:\nginx\nginx.exe程序。 
可以直接将配置导入到注册表

Window register代码

Windows Registry Editor Version 5.00

?[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NGINX\Parameters]

"Application"="d:\\nginx\\nginx.exe"

"AppParameters"=""

"AppDirectory"="d:\\nginx\\nginx\\"  
现在就可以通过控制面板->管理员工具->服务中找到该服务,并启动和停止了。 
但是,当停止Nginix服务后,访问浏览器仍然能看到网站。查看进程,你会发现,Nginx启动了两个nginx进程(根据nginx.conf的配置worker_processes 1;),Fork出来的进程显然没有被停止,结果就是nginx永远关不掉。因此彻底关闭nginx请使用taskkill命令:

Command代码

taskkill /F /IM nginx.exe > nul

结果是写一个stop_nginx脚本来处理nginx停止的所有操作

Command代码

@echo off  
echo Stopping nginx service...
net stop nginx  
echo Kill nginx process...

taskkill /F /IM nginx.exe > nul

顺便,如果想删除服务,使用命令:

Command代码

sc delete Nginx

说到这,大家一定会重新思考:如果同样写一个start_nginx脚本,那么还有使用windows服务的必要吗?脚本方式运行nginx除了有运行控制台窗口,似乎没有区别了。有好事者写了一个RunHiddenConsole.exe,可以隐藏控制台窗口。似乎完全不必考虑使用windows服务方法了。 
峰回路转,别忘记我们的初衷,使用windows服务可以在用户退出登陆时,仍然可以运行nginx进程 ,而脚本方式想如此运行就得颇费点周折,结论是windows服务仍然是有必要的,但仅用于启动nginx,至于停止nginx请使用前述脚本。

转载于:https://www.cnblogs.com/zsuxiong/archive/2011/12/26/2301430.html

把Nginx注册成Windows 系统服务(转载)相关推荐

  1. 怎样把任意exe程序注册成windows系统服务(手动注册服务)

    怎样把任意exe程序注册成windows系统服务(手动注册服务) 1. 要实现这个功能要用到微软提供的两个小工具"instsrv.exe"和"srvany.exe&quo ...

  2. 将frpc注册成windows系统服务

    将frpc注册成windows系统服务 将frpc注册成windows系统服务,让frpc随着系统启动而自动启动 环境:配置好的可以使用的frpc环境 .装好choco的windows(不会给wind ...

  3. nginx注册为windows系统服务

    前言 wsw 2.3.0(用法参见这里) nginx nginx-1.14.2 配置过程 把WinSW.NET4.exe和nginx.exe可执行程序在同一个目录下.并将WinSW.NET4.exe更 ...

  4. 如何将tomcat注册成windows系统服务方法

    首先,安装版的tomcat从官方网站下面下载安装之后,会自动安装好windows服务,所以不用介绍,主要说明一下如何将免安装版本的tomcat注册为windows服务. 一:下载tomcat 请下载3 ...

  5. 把Nginx注册成Windows的系统服务

    1. 下载微软的2个工具: instsrv.exe.srvany.exe  去微软网站下载安装Windows Server 2003 Resource Kit Tools(rktools.exe),它 ...

  6. 怎样把任意exe程序注册成windows系统服务

    方法一:使用windows自带的命令InstallUtil.exe 步骤:1.运行--〉cmd:打开cmd命令框2.在命令行里定位到InstallUtil.exe所在的位置InstallUtil.ex ...

  7. 将小蚂蚁内网穿透bat注册成windows系统服务的方法步骤

    1.将"MyService"文件夹复制到"C:\Windows"文件夹下. 2.右键"启动内网穿透.bat"编辑,      找到" ...

  8. 潇洒郎: Python exe程序注册为windows 系统服务

    1. 将python脚本生成exe文件 安装打包工具: pip install pyinstaller 生成exe文件: pyinstaller -F dial.py 如果想noconsole 则加参 ...

  9. linux nginx jsp,将nginx注册成linux的服务(service)

    在安装nginx之后,经常会进行重启操作,一般的操作都是在安装目录下运行./nginx -s reload命令,很是不便, 通常的做法是将nginx注册成service, 这样就能很方便的进行操作了, ...

最新文章

  1. LeetCode 116. 填充每个节点的下一个右侧节点指针
  2. 国际基因编辑科技发展报告
  3. HTML介绍及简单模式
  4. Eular 函数模板
  5. 计算机社团发展目标,计算机社团工作计划
  6. 组成原理----存储管理
  7. 如何为部署到 SAP BTP 平台上的 Node.js 应用提供Authorization 和 Trust 管理 - 权限管控
  8. bim服务器型号,国外有哪几个知名的BIM服务器?BIM服务器全介绍!(三)
  9. 【一起学加密4】一次性密码本
  10. ARM V8 SPEC B1 AArch64 Application level programer‘s Model
  11. 计算机辅助翻译工具客户端,OmegaT(计算机辅助翻译软件)
  12. 配合屏幕录像专家,又小又清晰!
  13. 熊猫压缩怎么使用_从命令行开始使用熊猫
  14. 力扣每日一题:891. 子序列宽度之和(java)
  15. ffmpeg读取rtsp并保存到mp4文件
  16. C - Cardboard Container Gym - 102007C(已知体积求表面积)
  17. 从0开始学习 GitHub 系列之「08.如何发现优秀的开源项目」----转载自stormzhang 原创文章
  18. 如何使用CubeMX创建STM32F105的程序
  19. 安装CPython解释器
  20. mysql不等于null和等于null的写法

热门文章

  1. Flutter 底部导航——BottomNavigationBar | 掘金技术征文
  2. 绝佳时机,前所未遇,开创全新购物体验
  3. 运用大数据破局“大城市病”有效支撑首都人口疏解
  4. ztree树形菜单demo
  5. 《Unreal Engine 4蓝图可视化编程》一1.6 改变目标方向
  6. IO之流程与buffer概览
  7. 基于nginx和uWSGI在Ubuntu系统上部署Django项目
  8. CCNA考试的一点体会
  9. silverlight后台加载本地图片
  10. 用combobox扩展控件(dsCtrlComboBox)做出类似QQ登录界面的效果