Windows下设置Nginx为Windows Service程序

  • 2017-06-02
  • 0
  • 0

Nginx官网提供的Windows版本程序中,一直没有将其设置成Windows服务程序的方法,这样在Windows工作环境中使用极其不便。好在有一些软件可以将其注册成Windows服务,这类软件有很多,最终选择了开源的Windows Service Wrapper,大名鼎鼎的Jenkins就是采用这种方式。
首先在https://github.com/kohsuke/winsw/releases下载最新版的winsw程序(这里使用2.x版本),因为winsw基于dotNet开发的,所以需要.NET的环境,官方提供了.NET2和.NET4两个版本,功能上没有任何区别。
接下来将下载的WinSW.NET2.exe复制到nginx的安装目录下,并讲程序名修改为nginxservice.exe,这里修改名字纯粹为了方便标识。然后在同目录下面创建一个同名的xml文件,即nginxservice.xml,内容如下:

  1.  <service>
  2.    <id>nginx</id>
  3.    <name>nginx</name>
  4.    <description>nginx</description>
  5.    <executable>c:\nginx\nginx.exe</executable>
  6.    <logpath>c:\nginx\</logpath>
  7.    <logmode>roll</logmode>
  8.    <depend></depend>
  9.    <startargument>-p</startargument>
  10.    <startargument>c:\nginx</startargument>
  11.    <stopexecutable>c:\nginx\nginx.exe</stopexecutable>
  12.    <stopargument>-p</stopargument>
  13.    <stopargument>c:\nginx</stopargument>
  14.    <stopargument>-s</stopargument>
  15.    <stopargument>stop</stopargument>
  16.  </service>

注意将其中的nginx安装目录修改成正确的目录,nginx.exe的参数可以参考官方的文档
最后执行 nginxservice install 命令就可以将Nginx安装成Windows服务程序了。

参考资料:
Add nginx.exe as Windows system service (like Apache)?
nginx for Windows

评论

还没有任何评论,你来说两句吧