PHP 模块在安装 PHP 7 到我的服务器后不加载
PHP modules don't load after installing PHP 7 to my server
我在我的服务器上安装了 PHP 7(结果,我没有 /etc/php5 和 /etc/php/7.0)。当我 运行 我的网络应用程序时,我看不到我以前的任何 CURL(或分叉)。
起初我收到这条错误消息:
Message: Call to undefined function curl_init()
并且在安装 php7-curl 之后我启用了它 - 在 info() 函数和此测试代码上获得批准:
var_dump(_isCurl());
function _isCurl(){
return function_exists('curl_version');
}
返回真。
但是当我的代码中有一个实际的 CURL 时,我得到这个错误:
PHP Warning: PHP Startup: Unable to load dynamic library
'/usr/lib/php/20151012/php_curl.dll' -
/usr/lib/php/20151012/php_curl.dll: cannot open shared object file: No
such file or directory in Unknown on line 0
在 /usr/lib/php/20151012/
我只有 .so
个没有意义的文件。 (/usr/lib/php5/20131226
文件夹也是如此)。那么它试图得到什么以及为什么要从那里得到什么?
如何配置我的新 php.ini 文件以获取以前的模型设置? (如果可能的话也启用 PCNTL_FORK)我怎样才能让它与 curl 一起工作?到底发生了什么???
编辑 2016 年 5 月 4 日:
好的,我决定将其更改为 curl.so
,现在收到此消息 PHP Warning: Module 'curl' already loaded in Unknown on line 0
然后我将其禁用,不知何故,curl 现在可以正常工作(评论 curl ;extension:curl.so
和;extension:php_curl.dll
。
我勒个去。
运行 apt-get dist-upgrade
解决了所有问题:)
我确实遇到了这个问题。
我刚刚花了最后几个小时试图修复一些东西,出于某种原因我在匆忙中启用了这条线:
extension:php_curl.dll
显然,正如有人所说,这有 0 的意义,但是在您这样做之后错误消息很奇怪。 运行 apt-get dist-upgrade
没有解决问题。
所以,在拔出更多头发并重新阅读此 post 100 遍之后,
我刚刚评论了它
;extension:php_curl.dll
嗯,问题解决了。
所以 OP 一定做了我所做的...工作时喝啤酒
就我而言,要使 curl 正常工作:
- sudo apt-get 安装 php-curl
- 评论卷曲扩展:
;extension=php_curl.dll
in php.ini(例如 /etc/php/7.1/cli/php.ini)
同时安装 PHP 的两个版本时,设置可能会混淆——例如,7.0 和 7.3。这可能是因为最近的 dist 升级。可能会加载错误版本的模块。就我而言,apt purge php7.0 和重新安装 7.3 修复了我,当然你可能不想对自己的系统那么粗暴...
我在我的服务器上安装了 PHP 7(结果,我没有 /etc/php5 和 /etc/php/7.0)。当我 运行 我的网络应用程序时,我看不到我以前的任何 CURL(或分叉)。
起初我收到这条错误消息:
Message: Call to undefined function curl_init()
并且在安装 php7-curl 之后我启用了它 - 在 info() 函数和此测试代码上获得批准:
var_dump(_isCurl());
function _isCurl(){
return function_exists('curl_version');
}
返回真。
但是当我的代码中有一个实际的 CURL 时,我得到这个错误:
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/php_curl.dll' - /usr/lib/php/20151012/php_curl.dll: cannot open shared object file: No such file or directory in Unknown on line 0
在 /usr/lib/php/20151012/
我只有 .so
个没有意义的文件。 (/usr/lib/php5/20131226
文件夹也是如此)。那么它试图得到什么以及为什么要从那里得到什么?
如何配置我的新 php.ini 文件以获取以前的模型设置? (如果可能的话也启用 PCNTL_FORK)我怎样才能让它与 curl 一起工作?到底发生了什么???
编辑 2016 年 5 月 4 日:
好的,我决定将其更改为 curl.so
,现在收到此消息 PHP Warning: Module 'curl' already loaded in Unknown on line 0
然后我将其禁用,不知何故,curl 现在可以正常工作(评论 curl ;extension:curl.so
和;extension:php_curl.dll
。
我勒个去。
运行 apt-get dist-upgrade
解决了所有问题:)
我确实遇到了这个问题。
我刚刚花了最后几个小时试图修复一些东西,出于某种原因我在匆忙中启用了这条线:
extension:php_curl.dll
显然,正如有人所说,这有 0 的意义,但是在您这样做之后错误消息很奇怪。 运行 apt-get dist-upgrade
没有解决问题。
所以,在拔出更多头发并重新阅读此 post 100 遍之后, 我刚刚评论了它
;extension:php_curl.dll
嗯,问题解决了。
所以 OP 一定做了我所做的...工作时喝啤酒
就我而言,要使 curl 正常工作:
- sudo apt-get 安装 php-curl
- 评论卷曲扩展:
;extension=php_curl.dll
in php.ini(例如 /etc/php/7.1/cli/php.ini)
同时安装 PHP 的两个版本时,设置可能会混淆——例如,7.0 和 7.3。这可能是因为最近的 dist 升级。可能会加载错误版本的模块。就我而言,apt purge php7.0 和重新安装 7.3 修复了我,当然你可能不想对自己的系统那么粗暴...