适用于 Windows 的 Nginx

已知问题
未来可能增强的功能

Windows 版的 Nginx 使用原生 Win32 API(而非 Cygwin 仿真层)。目前仅使用 select()poll() (1.15.9) 连接处理方法,因此不应期望其具有高性能和可伸缩性。由于此原因以及其他一些已知问题,Windows 版的 Nginx 被视为一个 beta 版本。目前,除了 XSLT 过滤器、图像过滤器、GeoIP 模块和嵌入式 Perl 语言外,它提供的功能与 UNIX 版的 Nginx 几乎相同。

要安装 nginx/Windows,请下载最新的主线版本分发包 (1.27.5),因为 Nginx 的主线分支包含所有已知修复。然后解压分发包,进入 nginx-1.27.5 目录,并运行 nginx。以下是在 C: 驱动器根目录下的示例:

cd c:\
unzip nginx-1.27.5.zip
cd nginx-1.27.5
start nginx

运行 tasklist 命令行工具以查看 Nginx 进程

C:\nginx-1.27.5>tasklist /fi "imagename eq nginx.exe"

Image Name           PID Session Name     Session#    Mem Usage
=============== ======== ============== ========== ============
nginx.exe            652 Console                 0      2 780 K
nginx.exe           1332 Console                 0      3 112 K

其中一个进程是主进程(master process),另一个是工作进程(worker process)。如果 Nginx 没有启动,请在错误日志文件 logs\error.log 中查找原因。如果日志文件尚未创建,原因应报告在 Windows 事件日志中。如果显示错误页面而不是预期的页面,也请在 logs\error.log 文件中查找原因。

nginx/Windows 使用其运行所在的目录作为配置中相对路径的前缀。在上面的示例中,前缀是 C:\nginx-1.27.5\。配置文件中的路径必须使用 UNIX 风格的正斜杠指定:

access_log   logs/site.log;
root         C:/web/html;

nginx/Windows 作为标准的控制台应用程序运行(而不是服务),可以使用以下命令进行管理:

nginx -s stop 快速关机
nginx -s quit 平滑关机
nginx -s reload 更改配置,使用新配置启动新的工作进程,平滑关闭旧的工作进程
nginx -s reopen 重新打开日志文件

已知问题

未来可能增强的功能