如何在Linux/Mac中更新PHP curl扩展?

如何在Linux/Mac中更新PHP curl扩展?,php,curl,xampp,lamp,Php,Curl,Xampp,Lamp,在PHP中更新curl扩展的最简单方法是什么?我在Mac/Linux上安装了XAMPP,并注意到它不允许我使用HTTP2,所以我考虑使用--with-nghttp2选项编译我自己的curl,但如何将其包含到PHP中呢?使用安装curl brew install curl --with-nghttp2 在Mac上,phpInfo()中没有任何更改,PHP使用的curl版本与以前相同。phpInfo()没有更新的原因是因为XAMPP的curl和终端默认curl是两个不同的curl。homebrew

在PHP中更新curl扩展的最简单方法是什么?我在Mac/Linux上安装了XAMPP,并注意到它不允许我使用HTTP2,所以我考虑使用
--with-nghttp2
选项编译我自己的curl,但如何将其包含到PHP中呢?使用安装curl

brew install curl --with-nghttp2
在Mac上,phpInfo()中没有任何更改,PHP使用的curl版本与以前相同。

phpInfo()没有更新的原因是因为XAMPP的curl和终端默认curl是两个不同的curl。homebrew安装/更新系统默认卷曲,但不安装/更新XAMPP的卷曲

您可以在终端中键入
哪个curl
,以检查系统默认curl的位置

在终端中键入
brew重新安装curl--with-openssl--with-nghttp2
,以使用openssl和nghttp2重新安装curl。brew很好,因为它有助于解决openssl和nghttp2的依赖关系

我没有深入研究它,但是将这个卷曲复制到xampp库文件夹并替换卷曲并不起作用。工作原理是重新编译,前缀是您的xampp库文件夹。指向您的--with-openssl=[homebrew cellar openssl文件夹]和--with-nghttp2=[homebrew cellar nghttp2文件夹]


很抱歉回答含糊不清,但如果您了解了一般概念,那么就不难理解详细步骤。

您好,非常感谢您的帮助!我立即尝试了您的建议,我相信它会起作用,但不幸的是,在手动编译curl之后,XAMPP控制面板中的apacheweb服务器不再启动。你知道问题出在哪里吗?我有XAMPP5.6.21。你需要检查日志中的错误以及为什么它不再启动。编译所做的一切就是替换库文件夹中的curl和curl配置文件。不幸的是,没有错误日志,但我尝试备份xamppfiles/lib文件夹中的
libcurl.
文件,然后运行
make install
并替换install命令生成的文件,现在Apache启动了。您是否使用了一个特殊的标志来告诉编译器不要替换这些文件?现在的问题是,在控制面板中,使用的curl版本仍然是
7.45.0
,但我编译的版本是
7.49.1
。还有什么我必须改变的吗?你能告诉我你为了更新curl所做的步骤吗?对不起,我没有这些步骤,但我只做了这些。我下载了curl并使用brew库和以下标志编译它——前缀=[xampp库文件夹]——with-nghttp2=[brew-nghttp2-folder]——with-ssl=[brew openssl folder],然后重新启动服务器。我最终从PHP切换到NodeJS,原因之一是它更容易调试,而且curl可以完美地工作。