首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何把 Nginx 程序创建为 Windows 服务

Nginx 介绍

Nginx 是一个 web 服务器。它类似于 Lighttpd,作为轻量级的 web server,可以替代重量级的 Apache/IIS。Nginx 专为性能优化而开发,是一个快速且能经受高负载考验的 web server。它来自于 Linux 世界但同样可以运行在 Windows 上面(由本地语言构建)。唯一的问题就是它不支持 Windows Services。

尽管 Nginx 以快速和提供高性能而具有很大的声誉,但并非是在 Windows 平台上。访问 官方网址,你会发现,对于 Windows 平台的支持被认为是测试版,根据 Nginx 的实现来看它并不提供(和 Linux 平台)相同的性能水平。

Nginx 运行模式

Nginx 在windows 下是绿色免安装的。官方已经提供了一个很棒的 wiki,上面有丰富的服务器相关信息。可以使用默认的配置,它使用 Nginx 目录下的 html 文件夹服务于端口 80。只需简单地执行 nginx.exe 即可启动 Nginx。但你想要停止它的时候问题来了,你需要执行以下命令:

虽然这很简单,但是如果它能够像 apache 或 IIS 那样作为一个服务工作的话会更好。那样的话,我们就可以设置机器启动时 Nginx 自动启动,还可以方便地启动、停止或者重启服务,设置恢复选项、依赖的服务,等等,不受用户登陆的影响。

winsw 介绍

winsw 是一个开源的小工具,它可以将 Windows 上的任何一个程序注册为服务,如果不需要,也可以方便的卸载服务。GitHub 项目地址为 winsw。

下载 winsw

首先要下载 winsw。它是一个单个的可执行文件,我们到 Github release 页面就可以下载 winsw 了。一般来说当然是下载最新的。winsw 可以运行在 .NET2 和 .NET4 两个版本上,当然如果使用 Win10 等比较新的系统,最好下载更新版本的 .NET。下载完之后最好把文件改成一个比较短小好记的名字,例如 winsw-nginx.exe 这样的,方便后面输入命令。

配置文件

需要编写一个和程序同名的 XML 文件作为 winsw 的配置文件。文件大体上长这样,这是官网的例子。

myapp

MyApp Service (powered by WinSW)

This service is a service cratead from a minimal configuration

%BASE%\myExecutable.exe

很明显,你应该稍微更改文件,这取决于你自己的文件路径。比如我的配置:

Nginx

Nginx Service

Nginx service is a web service

E:\nginx-1.10.3\nginx.exe

对于有更多技术需求的朋友,你也可以在该文件中设置 Nginx 依赖的服务。

安装为服务

最后,我们要安装服务了。只需要简单地执行以下语句,你将在你的服务列表里找到 "Nginx" 服务:

E:\nginx-1.10.3\winsw-nginx.exe install

运行成功后会在当前目录下生成几个以 winsw-nginx 开头的日志文件。

如果不再需要这个服务,使用

winsw uninstall

即可卸载服务。当然还有诸如

start

stop

这样的命令启动和关闭服务。

按照这种方法可以把任何 exe 程序做成 Windows 服务!请自行探索相关用法!‍

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171213A0EBEY00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券