我有一个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我不明白为什么他们看不见对方...
仅对于可能会有类似问题的其他人:我的问题是xdebug,我使用自动连接,所以当从子站点到主站点的请求发出时,它卡在某个地方(phpstorm在任何地方都没有停止顺便说一下),因此请求超时。
通过禁用或仅为子域进行配置,并避免它接受未配置服务器(在phpstorm中)开始工作的外部连接,仍然需要做一些工作,因为我需要调试请求的“双方”,但是通过这种方式,我可以与之合作...
我之前从未想过尝试禁用xdebug,因为实际上我没有想到它...