Nginx好像并不能像tomcat在windows下注册系统服务,然后查阅官方文档才知道当前windows版本的Nginx只是作为一个标准程序运行,而不是一个系统服务, 如果不注册成系统服务,服务器重启(断电、自动更新 etc.)就需要自己手动重启,不然网站、系统均无法访问。想想挺可怕,然后就开始各种谷歌百度找办法解决,过了不知道多久搜索发现可以通过winsw把Nginx注册成一个系统服务。
1.下载 Windows Service Wrapper
在项目主页内找到winsw的下载页面(我用的是2.0.2版本,下面第一个连接,附上其他链接)
http://repo.jenkins-ci.org/releases/com/sun/winsw/winsw/2.0.2/
github地址:https://github.com/kohsuke/winsw/releases
下载地址:https://github.com/kohsuke/winsw/releases
下载地址:https://github.com/winsw/winsw
下载地址:https://github.com/winsw/winsw/releases
下载的文件:winsw-2.0.2-bin.exe
2. 在nginx项目页面下载nginx windows版本
http://nginx.org
把nginx压缩包解压放到指定目录,例如我放的是d盘根目录。特别强调路径不要带空格的,否则会启动失败。
nginx安装目录是:F:
ginx+tomcat
ginx-1.16.1_alter
3. 将winsw-2.0.2-bin.exe复制到nginx目录:F:
ginx+tomcat
ginx-1.16.1_alter,并将其改成nginx-service.exe
4. 新建一个xml文件nginx-service.xml,名称一定要与上面的.exe上的文件名一致的哦。文件内容如下(亲测有效):
<service> <id>nginx</id> <name>nginx</name> <description>nginx-server</description> <logpath>F: ginx+tomcat ginx-1.16.1_alterlogs</logpath> <logmode>roll</logmode> <executable>F: ginx+tomcat ginx-1.16.1_alter ginx.exe</executable> </service>
5. 运行Windows cmd命令,进入nginx目录:运行nginx-service.exe install将其注册为windws系统服务。当配置错误(就是系统服务中有了但是启动不了)或者是要卸载它的时候运行:nginx-service.exe uninstall
在运行Windows cmd命令,输入services.msc,就可以在系统服务中看到nginx服务,右击启动就可以了,访问http://localhost:8088出现nginx页面,安装成功。