为什么一些 nginx 配置缺少 http 块?

为什么一些 nginx 配置缺少 http 块?

根据 nginx 初学者指南:

提供静态内容

一个重要的 Web 服务器任务是提供文件(例如图像或静态 HTML 页面)。您将实现一个示例,根据请求,文件将从不同的本地目录提供:/data/www(可能包含 HTML 文件)和 /data/images(包含图像)。这将需要编辑配置文件并在 http 块内设置一个带有两个位置块的服务器块。

但是大多数 nginx conf 文件都缺少这http { ... }部分。

我在文档中找不到任何关于它的描述。

http { ... }块是可选的吗?我什么时候应该使用/省略它?

答案1

http {}块对于提供 HTTP 服务至关重要,并且是必需的。问题是,它是在主nginx.conf配置文件中定义的,而不是在包含文件中定义的。因此,包含文件仅定义一个server {}块,每个虚拟主机至少定义一个块,并且它们实际上被包含里面http {}主配置文件中的块。

相关内容