当我执行一个用Laravel /dnsmasq在我的Mac上安装的cURL请求到.test域的PHP脚本时,我会得到以下错误:
无法解析: mydomain.test (找不到域名)
当我在浏览器中测试域时,它是可以的。
当我在终端中运行curl -Ik https://mydomain.test时,我会得到HTTP/2200代码,所以没关系。
当我在终端上运行curl -k https://mydomain.test时,我会得到页面的源代码,所以没关系。
为什么它不使用来自PHP的cURL?我很绝望..。
更新
由于普遍的需求;-)这是我的cURL代码。你不能做更简单的事情:
try {
$ch = curl_init( "http://mydomain.test" );
curl_exec( $ch );
dump(curl_error($ch));
curl_close( $ch );
} catch (Exception $e) {
var_dump($e);
}发布于 2019-02-27 14:57:44
此问题是由卷曲版本引起的,您能从终端检查您的卷发版本吗?
curl --version和php --ri curl
当您运行php --ri curl时,您将看到cURL Information => 7.63.0这一行。
然后,您可以比较您的版本,您可以看到哪个curl版本不适用于dnsmasq。
我遇到了这个问题,我的curl版本在php中是7.64.0。
解决这个问题的:
您可以卸载curl,此命令将删除curl的最后版本:
brew uninstall curl-openssl --ignore-dependencies然后重新启动php:
brew services restart php重新启动后,php将看到curl,即/usr/bin/curl,此版本可以访问本地域。
发布于 2019-02-28 19:17:41
....After重新启动时,php将看到curl,即/usr/bin/curl,这个版本可以访问本地域。
重新启动后,贴现者:重新启动
发布于 2019-12-18 08:10:47
将127.0.0.1添加到我的DNS设置中,为我解决了这个问题。即System Preferences -> Network -> Advance -> DNS
然后运行valet restart
https://stackoverflow.com/questions/54688451
复制相似问题