Heroku 应用程序在 *** 上调用外部 Web 服务 [关闭]

Posted

技术标签:

【中文标题】Heroku 应用程序在 *** 上调用外部 Web 服务 [关闭]【英文标题】:Heroku app calling external web service on a *** [closed] 【发布时间】:2012-05-24 00:18:22 【问题描述】:
    所以,我们有一个 Heroku 应用程序。 我们有一个在 Intranet 上运行的 Web 服务。 该 Intranet 需要 *** 连接以供外部人员访问 连接。 我们希望我们的 Heroku 应用程序调用 Intranet 上的 Web 服务,通过 虚拟专用网。

你会如何解决这个问题?

一些想法......

Heroku 似乎没有我们可以在我们的应用程序上激活的 *** 客户端 :(

我知道有些路由器可以为我们处理 *** gubbins。是否有在线服务可以让我们为我们的 Intranet 站点设置 *** 代理?

提前致谢

T

【问题讨论】:

【参考方案1】:

恐怕这不可能,至少通过 *** 是不可能的。 Heroku 使用 Amazon EC2,因此您甚至无法将其缩小到 IP 范围以允许访问。 Heroku 是一个封闭的系统,所以你不能安装额外的组件,所以除非它可以通过 http/https 访问,否则它是不行的。

【讨论】:

这并不完全正确。 Heroku 在幕后使用 Linux,但您没有 root 访问权限。因此,您作为非 root 用户可以在 Linux 上做的任何事情,都可以在 Heroku 上做。您可以使用任何 TCP 协议连接到任何服务。但是你只能监听 HTTP 连接。不幸的是,这排除了设置 *** 和 SSH 隧道的可能性。【参考方案2】:

我认为您可以使用静态 IP 地址添加来确保您的应用通过该 IP 地址连接。

https://devcenter.heroku.com/articles/quotaguardstatic

但我不知道这如何让您使用 ***。

【讨论】:

【参考方案3】:

如果您的公司有 Heroku Enterprise,看起来可以在 Private Space 中完成: [https://blog.heroku.com/heroku_private_spaces_are_now_generally_available_within_heroku_enterprise]

[https://devcenter.heroku.com/articles/private-spaces]

否则,我能想到的最简单的方法是在您的 DMZ 中启动一个代理服务器,该服务器限制从您的 Heroku 应用程序的访问...在上面从 mooreds 设置静态 IP 建议。

【讨论】:

以上是关于Heroku 应用程序在 *** 上调用外部 Web 服务 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

Heroku 未被识别为内部或外部命令 (Windows)

我啥时候需要在 Heroku 中使用工作进程

如何从 Heroku 的 MongoHQ 下载生产数据到本地机器?

Heroku中来自外部文件的角度路由

Python - Heroku 部署错误启动超时

使用外部硬盘驱动器,heroku 2.4.0 命令不起作用