com*_*ted 6 dns wordpress localhost docker lando
我的公司有在我的系统上运行在 Docker 中的软件,但没有使用 Lando。该软件通过 URL 提供一些数据:http : //local.relay.cool : 8081/clicks-bff/api/ads/
我可以在匿名浏览器中点击这个 URL,从终端 cURL 它,然后通过 Postman 加载它,它返回预期的数据。
我正在使用 Wordpress 配方运行 Lando,并且正在开发一个插件。这个插件可以访问外部 URL 并检索数据,我尝试了几个不同的只是为了确认。
但是,当 Lando 尝试访问上面列出的 URL 时,我收到一个 WP_Error:
object(WP_Error)#1269 (2) { ["errors"]=> array(1) { ["http_request_failed"]=> array(1) { [0]=> string(58) "cURL error 28: Resolving timed out after 5514 milliseconds" } } ["error_data"]=> array(0) { } }
Run Code Online (Sandbox Code Playgroud)
这是 .lando.yaml 配置块:
name: my app name
recipe: wordpress
config:
webroot: wordpress
Run Code Online (Sandbox Code Playgroud)
是否缺少某些配置选项以允许 Lando 访问我机器上的另一个 URL?
从您的问题来看,听起来您尝试访问的 URL 正在您计算机上的非 Lando docker 容器上运行。
这意味着从 Lando 实例到服务的路由将与平常有所不同。您应该能够像访问localhost端点一样完成此操作。正如 GitHub 上的 Lando 问题所述,您必须使用$LANDO_HOST_IP环境变量来路由到本地服务。
由于您的容器都在轻型 Hyper-V 实例内运行,因此您需要知道主机的主机名或 IP。一般我们将$LANDO_HOST_IP 设置为您的计算机。。。
所以尝试这样的事情(假设你使用的是 PHP curl):
curl_init('http://' . $_ENV["LANDO_HOST_IP"] . ':8081/clicks-bff/api/ads/');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
477 次 |
| 最近记录: |