DDEV和D8,用于内部请求的httpClient无法连接

问题描述 投票:0回答:1

我有一个Drupal 8的多站点安装,“主要”网站公开了一些REST Web服务,在本地我在测试它们方面遇到了一些麻烦,因为当我尝试这样做时,各个站点都无法互相看到像这样的东西

try {
  $response = $this->httpClient->get($this->baseUri . '/myendpoint', [
    'headers' => [
      'Accept' => 'application/json',
      'Content-type' => 'application/hal+json',
    ],
    'query' => [
      '_format' => 'json',
      'myparameters'  => 'value'
    ],
  ]);
  $results = $this->serializer->decode($response->getBody(), 'json');
}
catch (RequestException $e) {
  $this->logger->warning($e->getMessage());
}
return $results;

我总是会收到超时,我无法使其正常工作,我的主要网站使用的是通常的url project.ddev.site(并且$ this-> baseUri为https://myproject.ddev.site),所有其他网站都是形式为subsite.ddev.local如果我在项目中使用ssh并运行ping myproject.ddev.site,我会看到172.19.0.6我不明白为什么他们看不见对方...

drupal drupal-8 ddev
1个回答
0
投票

仅对于可能会有类似问题的其他人:我的问题是xdebug,我使用自动连接,所以当从子站点到主站点的请求发出时,它卡在某个地方(phpstorm在任何地方都没有停止顺便说一下),因此请求超时。

通过禁用或仅为子域进行配置,并避免它接受未配置服务器(在phpstorm中)开始工作的外部连接,仍然需要做一些工作,因为我需要调试请求的“双方”,但是通过这种方式,我可以与之合作...

我之前从未想过尝试禁用xdebug,因为实际上我没有想到它...

© www.soinside.com 2019 - 2024. All rights reserved.