2013-12-16 15:01:02
来 源
ITJS.CN
Nginx
本文介绍使Nginx以Windows服务的方式自动启动运行,希望对于初学Nginx服务器相关的朋友有帮助,更多Nginx安装、配置、报错处理等资源请本站内搜索。。

nginx.exe自己不管注册windows 服务器,需要自己手动命令行下启动/停止。利用"Windows Service Wrapper" 来将程序封装成Windows的服务。

参考了其官网文档:了解到它的基本启停命令如下:(假设,解压到了 "F:nginx-0.9.4" 目录下)

# 启动:

F:nginx-0.9.4> nginx.exe

# 查看状态:

F:nginx-0.9.4> tasklist /fi "imagename eq nginx.exe"

# 立即停止:

F:nginx-0.9.4> nginx.exe -s stop

# 结束所有会话后再停止(平滑退出):

F:nginx-0.9.4> nginx.exe -s quit

# 重新加载配置文件

# (当修改配置文件后,他会先启动一个新的worker,在把原来的worker停止,也即对用户透明)

F:nginx-0.9.4> nginx.exe -s reload

# 重新打开日志文件

F:nginx-0.9.4> nginx.exe -s reopen

只可惜,nginx.exe自己不管注册windows 服务器,需要自己手动命令行下启动/停止。

用Google百度了下,发现一个不错的文章――《Nginx Windows Service》,同时在文章里也发现了

一个不错的程序:"Windows Service Wrapper" ―― 用来将你的程序封装成Windows的服务。

你可以在这里下载。

使用方法:

1. 下载最新版的 Windows Service Wrapper 程序,比如我下载的名称是 "winsw-1.9-bin.exe",

然后,把它命名成你想要的名字(比如: "myapp.exe",当然,你也可以不改名)

2. 将重命名后的 myapp.exe 复制到 nginx 的安装目录(我这里是 "F:nginx-0.9.4")

3. 在同一个目录下创建一个Windows Service Wrapper的XML配置文件,名称必须与第一步重命名时使用的名称一致(比如我这里是 "myapp.xml",  如果,你没有重命名,则应该是 "winsw-1.9-bin.xml")

文件内容如下:

<?xml version="1.0" encoding="UTF-8" ?>

<service>

<id>nginx</id>

<name>nginx</name>

<description>nginx</description>

<executable>F:nginx-0.9.4nginx.exe</executable>

<logpath>F:nginx-0.9.4</logpath>

<logmode>roll</logmode>

<depend></depend>

<startargument>-p F:nginx-0.9.4</startargument>

<stopargument>-p F:nginx-0.9.4 -s stop</stopargument>

</service>

4. 命令行下执行以下命令,以便将其安装成Windows服务。

F:nginx-0.9.4> myapp.exe install

OK,至此,完工,确认一下:我的电脑 右键 -> 管理 -> 服务 -> 是否有了个 nginx 呢?启动起来,在浏览器中 访问 http://localhost 确认一下,再 停止服务,再访问一下  http://localhost 确认一下。

补充:

Windows Servcie Wrapper的命令格式如下:

# 安装服务

CMD:> myapp.exe install

# 卸载服务

CMD:> myapp.exe uninstall

# 启动服务

CMD:> myapp.exe start

# 停止服务

CMD:> myapp.exe stop

声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。