我有一个服务器(不是网络),我在两个不同的主机上运行。
还有一个 IP 地址白名单。
我希望列入白名单的 IP 请求发送到一个主机,而所有其他请求发送到另一台主机。
所有请求都从 nginx 转到共享 ip:port。
如何在 nginx 中进行设置?
我有一个服务器(不是网络),我在两个不同的主机上运行。
还有一个 IP 地址白名单。
我希望列入白名单的 IP 请求发送到一个主机,而所有其他请求发送到另一台主机。
所有请求都从 nginx 转到共享 ip:port。
如何在 nginx 中进行设置?
这个任务可以这样解决:使用geo或map指令,我们为上游名称的变量分配一个
$upstream_name值,然后在 proxy_pass 中使用这个变量。真空中球形配置的示例(来自记忆):
使用 IP 地址时,它可能
geo会更有效。自己把它放在一个单独的文件中
map,并将它与http 部分中的include指令连接起来。如果您决定使用 map 并且列表会非常大,那么提前增加map_hash_max_size指令的值是值得的。
更新文件内容后,需要通知 nginx 配置更新。这可以通过启动器操作系统或HUP
sudo service nginx reload信号来完成。现有的连接不会受到影响,但也不会收到新的配置。