Apache 2.4 PHP 启动:无法加载动态库 'curl.so'、libcurl。4.dylib
Apache 2.4 PHP Startup: Unable to load dynamic library 'curl.so', libcurl.4.dylib
我是 运行 macOS 10.12、Apache 2.4 和 PHP 7.2.7
当我添加行时:LoadModule php5_module libexec/apache2/libphp5.so
我的 httpd.conf 我收到以下错误。
httpd not running, trying to start
Warning: PHP Startup: Unable to load dynamic library 'curl.so'
(tried:
/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/curl.so
(dlopen(/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/curl.so,
9): Library not loaded: /usr/local/php5/lib/libcurl.4.dylib
Referenced from:
/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/curl.so
Reason: Incompatible library version: curl.so requires version 9.0.0
or later, but libcurl.4.dylib provides version 7.0.0),
/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/curl.so.so
(dlopen(/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/curl.so.so,
9): image not found)) in Unknown on line 0
Warning: PHP Startup: Unable to load dynamic library
'/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/http.so'
(tried:
/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/http.so
(dlopen(/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/http.so,
9): Library not loaded: /usr/local/php5/lib/libcurl.4.dylib
Referenced from:
/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/http.so
Reason: Incompatible library version: http.so requires version 9.0.0
or later, but libcurl.4.dylib provides version 7.0.0),
/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718//usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/http.so.so
(dlopen(/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718//usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/http.so.so,
9): image not found)) in Unknown on line 0
/usr/sbin/apachectl: line 92: 719 Segmentation fault: 11 $HTTPD "$@"
我用 brew 更新了 curl,它显示:
/usr/local/php5/lib/libcurl.4.dylib (compatibility version 9.0.0, current version 9.0.0)
我仍然遇到同样的错误。
为什么报错显示libcurl.4.dylib是9.0.0版本的时候提供的是7.0.0版本?它是否指向文件的旧版本?他们都显示了这个位置 /usr/local/php5/lib/libcurl.4.dylib
感谢您的帮助。
它基本上是这样写的:
requires version 9.0.0 or later, but *.dylib provides version 7.0.0
这意味着,您必须在版本 9.0.0
上安装这些库,而不是版本 7.0.0
。
同样奇怪的是dlopen()
抱怨文件名后缀.so.so
我终于找到了有效的解决方案。
$ brew install httpd php72
我按照说明设置 httpd.conf 文件和 php.ini 文件,Apache 现在可以正常启动了。
我是 运行 macOS 10.12、Apache 2.4 和 PHP 7.2.7
当我添加行时:LoadModule php5_module libexec/apache2/libphp5.so
我的 httpd.conf 我收到以下错误。
httpd not running, trying to start
Warning: PHP Startup: Unable to load dynamic library 'curl.so' (tried: /usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/curl.so (dlopen(/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/curl.so, 9): Library not loaded: /usr/local/php5/lib/libcurl.4.dylib
Referenced from: /usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/curl.so
Reason: Incompatible library version: curl.so requires version 9.0.0 or later, but libcurl.4.dylib provides version 7.0.0), /usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/curl.so.so (dlopen(/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/curl.so.so, 9): image not found)) in Unknown on line 0Warning: PHP Startup: Unable to load dynamic library '/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/http.so' (tried: /usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/http.so (dlopen(/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/http.so, 9): Library not loaded: /usr/local/php5/lib/libcurl.4.dylib
Referenced from: /usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/http.so
Reason: Incompatible library version: http.so requires version 9.0.0 or later, but libcurl.4.dylib provides version 7.0.0), /usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718//usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/http.so.so (dlopen(/usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718//usr/local/php5/lib/php/extensions/no-debug-non-zts-20170718/http.so.so, 9): image not found)) in Unknown on line 0
/usr/sbin/apachectl: line 92: 719 Segmentation fault: 11 $HTTPD "$@"
我用 brew 更新了 curl,它显示:
/usr/local/php5/lib/libcurl.4.dylib (compatibility version 9.0.0, current version 9.0.0)
我仍然遇到同样的错误。
为什么报错显示libcurl.4.dylib是9.0.0版本的时候提供的是7.0.0版本?它是否指向文件的旧版本?他们都显示了这个位置 /usr/local/php5/lib/libcurl.4.dylib
感谢您的帮助。
它基本上是这样写的:
requires version 9.0.0 or later, but *.dylib provides version 7.0.0
这意味着,您必须在版本 9.0.0
上安装这些库,而不是版本 7.0.0
。
同样奇怪的是dlopen()
抱怨文件名后缀.so.so
我终于找到了有效的解决方案。
$ brew install httpd php72
我按照说明设置 httpd.conf 文件和 php.ini 文件,Apache 现在可以正常启动了。