繁体   English   中英

如何在 AWS VPC 的私有子网中连接 AWS EC2 实例后面的网页

[英]How to connect a webpage behind a AWS EC2 instance in a private subnet in a AWS VPC

我有一个带有 1 个公共子网和 1 个私有子网的 AWS VPC。 我在每个子网中放置了 1 个 EC2 实例。 两个 EC2 实例都有 Apache http 服务器在端口 80 中运行,并有一个 HTML 页面。 比如说,在公共 EC2 实例中的 Page1.html 和私有 EC2 实例中的 Page2.html 中。 公共 EC2 实例中的 Page1.html 有一个 URL 指向私有 EC2 实例中的 Page2.html。
所有安全组都对所有流量开放,并且 NAT 网关分配有弹性 IP。

当我在浏览器中输入(http://public IP 地址:80/Page1.html)时,会显示 Page1.html。 但是,当我单击指向私有 EC2 实例中的 Page2.html 的 Page1.html 上的链接时,不会显示 Page2.html。 请求最终超时。

有没有办法让这 2 个 Apache 服务器相互通信?

可能值得注意的是:

i)我可以从公共实例ping (私有IP)

ii) 从公共实例中,我可以运行“ nc -vz (private ip) 80 ”并得到响应为“ Connection to (private ip) 80 port [tcp/http] succeeded!

iii) 从公共实例中,执行“ curl (private ip) 80 ”命令获取 HTML 脚本/转储,但显示错误“ curl”也无法连接到服务器

当您单击网页中的链接时,这两个 web 服务器不会相互通信,您的 web 浏览器正在直接与两个服务器通信。 在这种情况下,您不能在私有子网中拥有其中一台服务器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM