我可以使用以下路径在浏览器中访问我的网站:my-dash.docker.localhost:8000
。另外,正如我发现的here为了通过 POSTMAN 访问该站点,我必须添加到我的主机文件中:
127.0.0.1 my-dash.docker.localhost
我更新了我的 phpunit.xml:
<env name="SIMPLETEST_BASE_URL" value="http://my-dash.docker.localhost:8000"/>
当我运行测试时,出现以下错误:
1) Drupal\my_dashboard\Tests\Rest\MyDashboardResourceTest::testPost
GuzzleHttp\Exception\ConnectException: cURL error 7: Failed to connect to my-dash.docker.localhost port 8000: Connection refused (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)
/var/www/html/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php:186
/var/www/html/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php:150
我已验证,如果添加已知网址,则不会收到此错误:
<env name="SIMPLETEST_BASE_URL" value="https://www.google.com/"/>
最佳答案
我找到了答案here 。更新了 phpunit.xml:
<env name="SIMPLETEST_BASE_URL" value="http://nginx"/>
在我的例子中,我使用的是 Drupal,并且在我的 settings.php 中设置了受信任的主机。我还必须将 nginx 添加为可信主机。
关于docker - 无法将 docker url 与 PHP 单元连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44815659/