本地 WordPress 站点上的 cURL 返回:错误 6(无法解析主机)
Posted
技术标签:
【中文标题】本地 WordPress 站点上的 cURL 返回:错误 6(无法解析主机)【英文标题】:cURL on local WordPress site returns: Error 6 (Could not resolve host) 【发布时间】:2019-07-06 23:18:32 【问题描述】:我有一个本地 WordPress 安装运行在:https://catalogue3.test。
请注意,所有.test
域都应解析为localhost
,因为我使用Laravel valet。但是,当我在我的 Laravel 项目中执行以下代码时,出现如下所示的异常。
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', "https://catalogue3.test", ['verify' => false]);
连接异常
cURL 错误 6:无法解析:catalogue3.test(域名不 找到)(见http://curl.haxx.se/libcurl/c/libcurl-errors.html)
当我在终端中运行以下命令时,会显示 WordPress 页面。
curl https://catalogue3.test/ --insecure
【问题讨论】:
您是否将 catalogue3.test 添加到您的 /etc/hosts 文件中? 不行,Laravel 代客使用 DnsMasq 在 Laravel Valet(无 Wordpress)下运行的 Laravel 应用程序存在同样的问题。你找到解决办法了吗? @MaximeFreschard nop 我没有成功:( @MaximeFreschard 找到了解决方案! 【参考方案1】:我尝试将域添加到主机并尝试更改网络设置中的 dns,this answer 对我有用。
检查这是否是您的问题的快速方法是:
curl --version
和php --ri curl
版本应该匹配。如果他们不这样做,可能是因为 brew 已安装 curl-openssl。这可以通过以下方式删除:
brew uninstall curl-openssl --ignore-dependencies
也许有一种方法可以正确配置已安装的 curl-openssl - 我还没有对此进行调查。
【讨论】:
我永远不会想到这一点。不过这行得通! 像魅力一样工作。运行brew uninstall curl-openssl --ignore-dependencies
后,您需要使用valet restart
重新启动代客。【参考方案2】:
在我的情况下(在 macos 上),我必须在我的 WiFi 设置中添加 127.0.0.1 作为第一个 DNS 服务器选项。
这里也有一些有用的信息:https://github.com/laravel/valet/issues/736
【讨论】:
【参考方案3】:添加
ip catalogue3.test
到您的 /etc/hosts 文件
【讨论】:
【参考方案4】:我解决了这个添加 catalogue3.test 到/etc/hosts
的问题,即使我使用的是DnsMasq
,理论上我也不需要它。
【讨论】:
以上是关于本地 WordPress 站点上的 cURL 返回:错误 6(无法解析主机)的主要内容,如果未能解决你的问题,请参考以下文章
php 用于通过cURL测试收集WordPress站点和服务器信息的独立脚本