有用!

有用!

我有三个 LXC 容器(CN1、CN2、CN3)。它们各自运行自己的 Apache 实例并拥有自己的网络,因此每个容器都有自己的私有 IP。

我将所有容器设置为仅监听 Apache 的私有 IP。我还设置了 Nginx 作为主机的代理,根据请求的域引导任何流量。

因此,我有 web1 -> CN1(10.0.3.2),web2 -> CN2(10.0.3.3),web3 -> CN3(10.0.3.4)。

当我访问 web1 时,它显示正确的页面。当我访问 web2 时,它显示正确的页面。然而,当我访问 web3 时,它显示 web2 的页面。

这是我的 Nginx 服务器配置:

web2

服务器 {
        服务器名称web2;

        地点 / {
                proxy_set_header X-真实IP $remote_addr;
                proxy_set_header 主机 $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                代理密码 http://10.0.3.3:802;
        }
}

web3

服务器 {
        服务器名称web3;

        地点 / {
                proxy_set_header X-真实IP $remote_addr;
                proxy_set_header 主机 $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                代理密码 http://10.0.3.4:804;
        }
}

Apache 在 web3 上运行,当我从主机本身 telnet 到它时,我得到了该页面:

root@SKYNet:/etc/nginx/sites-available# telnet 10.0.3.4 804
尝试 10.0.3.4...
已连接到 10.0.3.4。
转义字符是‘^]’。
获取/HTTP/1.1
主机:web3

HTTP/1.1 200 正常
日期:2013 年 5 月 26 日星期日 17:00:27 GMT
服务器:Apache/2.2.22(Ubuntu)
最后修改时间:2013 年 5 月 26 日星期日 16:27:58 GMT
ETag:“20457c-b1-4dda183dd360e”
接受范围:字节
内容长度:177
变化:接受编码
内容类型:text/html
X-Pad:避免浏览器错误

有用!

这是该服务器的默认网页。

Web 服务器软件正在运行,但尚未添加任何内容。

我也可以从家里的机器 ping 它,也可以从允许 ping 网站的外部站点 ping 它。我甚至让一个朋友测试它,它显示了同样的东西(web2 的索引文件而不是它自己的)。

答案1

我忘记启用 Nginx 配置。

假设你的站点可用配置存储在/etc/nginx/sites-available/并且 Nginx 读取/etc/nginx/sites-enabled/以查看要处理的服务器,请执行以下操作:

ln -s /etc/nginx/sites-available/server_config /etc/nginx/sites-enabled/server_config

然后重新启动或重新加载 Nginx。

相关内容