Nginx:无法构建 map_hash,您应该增加 map_hash_bucket_size:64,即使它是在 http 下设置的(使用流模块)

Nginx:无法构建 map_hash,您应该增加 map_hash_bucket_size:64,即使它是在 http 下设置的(使用流模块)

因为我只能在这里提问,但它更像是为其他有这些问题的人提供解决方案,我希望在这里发帖仍然可以,因为我不知道有更好的地方,因为我没有自己的网站或任何东西。

今天,在我们公司将使用 stream 模块的 nginx 更新到 1.24.0 后,我们遇到了如何增加 map_hash_bucket_size 大小的问题。对看似类似问题的其他所有答案都说将此参数写入“http”,如果您使用 stream 模块,该参数显然会被忽略?我无法验证这一点。

对于我们来说,最终通过测试参数对我们起作用的位置得到的解决方案是在“stream”下写入参数:

http {
    server {
        listen 80;
        server_name _;
        return 301 https://$host$request_uri;
      }
    }

    stream {
        map_hash_bucket_size 128;
        map $ssl_preread_server_name $name {
            redacted.company.domain.local upstream_development_https;
            ...
    }

希望这可以为将来遇到像我们这样的特殊情况的任何人提供帮助。

相关内容