基于 URL 的内部重定向

基于 URL 的内部重定向

基本上,我们有一个外部 IP 地址,内部有多个服务器,并且希望根据请求 URL 重定向到每个内部服务器。我们不想安装另一块硬件来为我们执行此操作,但我们有一个运行 Linux 的防火墙,目前只转发到其中一个内部服务器。我们的设置示例可以在此处看到:http://img23.imageshack.us/img23/5469/drawing1br.jpg注意:domain.com 不指向此框,我们也不希望它指向。子域名手动指向我们的全局 IP 地址。

答案1

你可以使用为此,请将其安装在防火墙上并使用具有多个后端的配置。例如:

    # a simple backend
    backend b1 {
            set backend.host = "10.1.2.100";
            set backend.port = "http";
    }
    backend b2 {
            set backend.host = "10.1.2.101";
            set backend.port = "http";
    }
    backend b3 {
            set backend.host = "10.1.2.102";
            set backend.port = "http";
    }

    sub vcl_recv {
        if (req.http.host ~ "^(www.)?example.com$") {
            set req.backend = b1;
         }

         if (req.http.host ~ "^(www.)?example.org$") {
            set req.backend = b2;
         }

         if (req.http.host ~ "^(www.)?example.net$") {
            set req.backend = b3;
         }
    }

相关内容