返回介绍

介绍

其他

How-To

开发

模块参考

Windows 下的 nginx

发布于 2024-08-13 23:46:27 字数 5675 浏览 0 评论 0 收藏 0

已知问题 以后可能的发展

Nginx 的 Windows 版本使用了本地的 Win32 API(而不是 Cygwin 模拟层)。目前仅使用 select()poll() (1.15.9) 连接处理方式。由于此版本和其他存在已知的问题的 Nginx Windows 版本都被认为是 beta 版本,因此您不应该期望它具有高性能和可扩展性。现在,它提供了与 Unix 版本的 nginx 几乎相同的功能,除了 XSLT 过滤器、图像过滤器、GeoIP 模块和嵌入式 Perl 语言。

要安装 nginx 的 Windows 版本,请 下载 最新的主线发行版(1.17.2),因为 nginx 的主线分支包含了所有已知的补丁。之后解压文件到 nginx-1.17.2 目录下,然后运行 nginx。以下是 C盘 的根目录:

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

运行 tasklist 命令行工具查看 nginx 进程:

C:\nginx-1.17.2>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),另一个是工作进程(worker)。如果 nginx 未能启动,请在错误日志 logs\error.log 中查找原因。如果日志文件尚未创建,可以在 Windows 事件日志中查找原因。如果显示的页面为错误页面,而不是预期结果,也可以在 logs\error.log 中查找原因。

Nginx 的 Windows 版本使用运行目录作为配置文件中的相对路径前缀。在上面的例子中,前缀是 C:\nginx-1.17.2\。在配置文件中的路径必须使类 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 代理功能

以后可能的发展

  • 作为服务运行
  • 使用 I/O 完成端口作为连接处理方式
  • 在单个工作进程中使用多个工作线程

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文