nginx for Windows
已知问题 未来可能的增强功能 |
Windows 版 nginx 使用原生 Win32 API(而不是 Cygwin 仿真层)。目前仅使用 select()
和 poll()
(1.15.9) 连接处理方法,因此不应期望获得高性能和可扩展性。由于此原因和其他一些已知问题,Windows 版 nginx 被认为是 beta 版本。目前,它提供了与 UNIX 版 nginx 几乎相同的功能,除了 XSLT 过滤器、图像过滤器、GeoIP 模块和嵌入式 Perl 语言。
要安装 nginx/Windows,请从 下载 最新主线版本分发版 (1.27.3),因为 nginx 的主线分支包含所有已知修复程序。然后解压缩分发版,进入 nginx-1.27.3 目录,并运行 nginx
。以下是以 C 盘根目录为例:
cd c:\ unzip nginx-1.27.3.zip cd nginx-1.27.3 start nginx
运行 tasklist
命令行实用程序以查看 nginx 进程
C:\nginx-1.27.3>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
其中一个进程是主进程,另一个是工作进程。如果 nginx 未启动,请在错误日志文件 logs\error.log
中查找原因。如果未创建日志文件,则应在 Windows 事件日志中报告此原因。如果显示错误页面而不是预期页面,也请在 logs\error.log
文件中查找原因。
nginx/Windows 使用其运行的目录作为配置文件中相对路径的前缀。在上面的示例中,前缀为 C:\nginx-1.27.3\
。配置文件中的路径必须使用 UNIX 样式的正斜杠指定
access_log logs/site.log; root C:/web/html;
nginx/Windows 作为标准控制台应用程序运行(而不是服务),可以使用以下命令进行管理
nginx -s stop 快速关闭 nginx -s quit 优雅关闭 nginx -s reload 更改配置,启动具有新配置的新工作进程,优雅关闭旧工作进程 nginx -s reopen 重新打开日志文件
已知问题
- 尽管可以启动多个工作进程,但实际上只有一个工作进程在执行工作。
- 不支持 UDP(以及本质上的 QUIC)功能。
未来可能的增强功能
- 作为服务运行。
- 使用 I/O 完成端口作为连接处理方法。
- 在一个工作进程内使用多个工作线程。