首页 > 解决方案 > 为什么我的应用程序的 IP 地址不会在后续请求中更改?

问题描述

据我所知,Heroku 有动态的出站 IP 地址。但是当我尝试制作一个https://ipinfo.io/ip通过 curl 请求的 PHP 脚本时,IP 似乎没有改变。

当我推送新的提交时,IP 地址确实发生了变化,当我从那里运行heroku run bash并运行curl时,我总是看到一个新的 IP。

为什么当我从浏览器运行我的 PHP 脚本时 IP 没有改变,但是当我curl通过 bash 运行时它确实改变了?

标签: heroku

解决方案


当您通过heroku run 它运行某些东西时,它会在一次性 dyno 中运行。此测功机与您的 Web 服务器运行的测功机是分开的。因此,它将具有不同的 IP 地址。每次运行时,heroku run bash您都会获得一个全新的一次性测功机,从而产生一个新的 IP 地址。

当我推送新的提交时,IP 地址确实发生了变化

同样,将更改推送到 Heroku 会导致构建一个新的 slug 并重新启动您的应用程序。

如果您只是重新启动您的应用程序,您应该能够看到类似的行为,例如通过heroku restart.


推荐阅读