zoukankan      html  css  js  c++  java
  • Nginx添加到windows服务

    在windows平台,把Nginx注册到服务,又可以启动、停止和重启的方法,网上并没找到好的办法。

    既然如此,唯有自己写程序实现了

    使用C#进行编写,有兴趣的可以下载源码自己改:源码下载(2017-06-26)旧版下载(2017-06-23)

    或直接下载编译好的程序,需要.net framework 2.0或.net framework 4.0的环境支持

    通用版本程序下载(2017-06-26)Nginx专用版本程序下载(2017-06-23)

    通用版本,使用自己定义的bat脚本,实现自定义windows服务,应该可用于绝大多数像nginx等这类不方便使用windows服务的程序

    通用版本目录结构及说明:

      MyInstall.bat :安装服务的脚本,用记事本打开,修改"set my=MyService",让my的值为你想要注册的服务名,如“Hello”。

      MyService.bat :这个脚本是服务启动时执行的脚本,可自己实现自己的启动逻辑

      MyService.exe :注册为windows服务的服务程序,通过它来管理实际需要运行的服务程序。

      2.0和4.0目录 :存放的是MyService.exe对应于.net framework 2.0和.net framework 4.0的环境的exe

    MyService.exe和MyService.bat文件名必须和MyInstall.bat中配置的服务名一致,如“Hello.exe”、“Hello.bat”

    使用通用版本程序安装nginx服务:

      Nginx添加到windows服务时很简单,你可以什么都不改,只需要安装好对应的.net framework环境

      把三个文件复制到nginx.exe的同级目录,双击运行MyInstall.bat进行安装,安装后将会看到服务中增加了一个服务名为“MyService”的服务,即可用它启动和重启nginx服务了。

    新增加了一个专门为nginx提供的专用版本的服务,该版本的好处就是不需要另外的脚本支持,即不需要额外的bat脚本配置文件支持的

      MyNginxServiceInstall.bat :安装服务的脚本,用记事本打开,修改"set my=MyNginxService",让my的值为你想要注册的服务名,如“Hello”。

      MyNginxService.exe :文件名即服务名,可修改为你需要注册的服务名,如上面配置为“Hello”,则修改为“Hello.exe”。

      复制MyNginxService.exe和MyNginxServiceInstall.bat至nginx.exe同级目录

      以管理员身份,运行MyNginxServiceInstall.bat进行服务安装。

      本exe依赖.net framework框架,具体版本可复制下载文件里2.0或4.0目录下的同名exe替换

    更新:

    2017-06-26

    移除旧版本中的停止脚本方法,利用windows的父子进程信息,找出所有关联的子进程进行Kill,方便结束大多像java等通过脚本启动的,难关闭的程序。

    修改启动脚本文件名,改为和exe同名。

    更新源代码zip,作为解决方案,放了两个项目,一个为通用程序,一个为nginx专用程序。

    2017-06-23

    更新了下启动和结束脚本,程序的版本和文件属性

    如果是通过MyStart.bat要再运行另一个bat的,则是:start /B C:your.bat,其中/B为不启动新的窗口,且MyStart.bat为无窗口模式运行

  • 相关阅读:
    Android:异步处理之Handler、Looper、MessageQueue之间的恩怨(三)
    Android:异步处理之AsyncTask的应用(二)
    Android:异步处理之Handler+Thread的应用(一)
    Android:剖析源码,随心所欲控制Toast显示
    Android:谈一谈安卓应用中的Toast情节(基础)
    Android:一个高效的UI才是一个拉风的UI(二)
    Android:一个高效的UI才是一个拉风的UI(一)
    Intent的那些事儿
    解析BroadcastReceiver之你需要了解的一些东东
    解析Service之你需要了解的一些东东
  • 原文地址:https://www.cnblogs.com/skey_chen/p/4643440.html
Copyright © 2011-2022 走看看