link to issue我还有一个问题。是否有可能使我像上面那样对每个系统进行反向代理,在启用了模块的文件夹中都有单独的conf文件。我试过了,但是,nginx一直在说,流指令是重复的。也许我可以将一个流模块指向各种服务器conf,但是我不知道该怎么做。
有人可以帮忙吗?
Rgds
海达尔
我刚刚发布了一些示例,介绍了如何分割配置文件:https://github.com/xware-gmbh/nginx-config
让我知道到目前为止是否有帮助,并且是否可以自我解释。如有任何问题,我会在这里提供帮助。
这里要点是include /etc/nginx/conf.d/*.conf;
文件末尾的nginx.conf
行,告诉nginx确实从*.conf
目录中获取所有/etc/nginx/conf.d/
文件并为其构建一个大配置文件。然后,当nginx与nginx -T
一起运行时,您可以检查结果,显示所有已加载的配置组合。
此配置已经可以正常运行了,很好
RP只是“转储”将端口80和443上的所有请求转发到服务器(上游)]
RP不会解密/加密所有SSL流量。只是直通
对于这种情况,我使用了“ stream”和“ ssl_preread_server_name”指令,这很好用。
所有服务器都配置在一个文件中,文件看起来像是(passthrough.conf):
map $ssl_preread_server_name:$server_port $upstream {
tempserver01.domain.com:5480 tempserver01_vapp_5480;
tempserver01.domain.com:443 tempserver01_backend_443;
tempserver02.domain.com:443 tempserver02_backend_443;
}
server {
listen 443;
proxy_pass $upstream;
ssl_preread on;
}
server {
listen 5480;
proxy_pass $upstream;
ssl_preread on;
}
upstream tempserver01_vapp_5480 {
server realserver01.domain.com:5480;
}
upstream tempserver01_backend_443 {
server realserver01.domain.com:443;
}
upstream tempserver02_backend_443 {
server realserver02.domain.com:443;
}
以上配置作为passthrough.con放置在单独的文件夹中
/ etc / nginx / stream / enabled /
nginx.conf中指向的流指令ist如下所示:]
stream { include /etc/nginx/stream/enabled/*.conf; }
问题:
我的主要目标是分割passthrough.conf文件并为每台服务器配置。为什么?因为有了这种配置,我可以轻松地在/ etc / nginx / stream / enabled文件夹中找到我的服务器,而不是在整个文件中搜索服务器。
到目前为止,我实际上是在服务器服务器中进行拆分,但是nginx -t告诉我,端口443是重复的。当我将所有服务器打包到一个文件中时,不会发生任何问题。
拆分的直通文件看起来像这样
对于realserver01
map $ssl_preread_server_name:$server_port $upstream { tempserver01.domain.com:5480 tempserver01_vapp_5480; tempserver01.domain.com:443 tempserver01_backend_443; } server { listen 443; proxy_pass $upstream; ssl_preread on; } server { listen 5480; proxy_pass $upstream; ssl_preread on; } upstream tempserver01_vapp_5480 { server realserver01.domain.com:5480; } upstream tempserver01_backend_443 { server realserver01.domain.com:443; }
对于realserver02:
map $ssl_preread_server_name:$server_port $upstream { tempserver02.domain.com:443 tempserver02_backend_443; } server { listen 443; proxy_pass $upstream; ssl_preread on; } upstream tempserver02_backend_443 { server realserver02.domain.com:443; }
那么拆分的配置文件怎么了?
提前感谢
海达尔