PHP - Amazon Elastic Beanstalk - 获取私有IP地址

时间:2015-04-15 19:01:44

标签: php amazon-web-services elastic-beanstalk

我正在Amazon Elastic Beanstalk(EB)中托管一个Web应用程序。网络应用程序是用PHP编写的。 EB还使用Elastic Load Balancer(ELB)。 Web应用程序与客户端实现websocket。 以下是我到目前为止所做的事情:

  1. 我知道我必须听私有ip,而不是127.0.0.1的实例才能使用
  2. 在负载均衡器中实现了一个侦听器以连接到实例端口
  3. 打开安全组中端口的入站和出站流量。
  4. 如果EB部署进行水平扩展(增加实例数),缩放实例的私有ips是否保持相同(请解释)?如果没有,我相信如何,我如何获得为客户提供服务的当前实例的私有IP地址?

    到目前为止,它的工作完美没有任何问题,但只有一个实例在运行。我尝试列出客户端,我可以使用列表获取私有ips,但我不知道如何识别当前正在为该文件提供服务的实例。

    请帮帮我。

1 个答案:

答案 0 :(得分:0)

这样可以解决问题:

<?php $ip = shell_exec('hostname -i'); ?>

重要:这仅适用于Linux环境。对于Windows,hostname -i无效。您可以参考https://superuser.com/questions/382265/获取更多想法。