我有Ubuntu 12.04和PHP 5.6.11并运行Apache / 2.4.12。我已经通过运行
安装了CURLsudo apt-get install php5-curl
并重新启动:sudo service apache2 restart
在命令行中输入curl -V
并获取以下内容:
curl 7.22.0 (i686-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap pop3 pop3s rtmp rtsp smtp smtps telnet tftp
Features: GSS-Negotiate IDN IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP
当我输入which curl
时,我会收到以下信息:/usr/bin/curl
所以我很确定已经安装了curl。
当我在从Web浏览器调用的php页面上使用phpinfo()
时,没有阻止卷曲和任何卷曲的引用。
我的理解是curl应该基于这个question/answer正常工作而不需要任何配置更改,显然不是这样。
有人能指出我正确的方向来修改PHP配置文件或我需要运行哪些命令才能在我的版本上使用PHP运行CURL?
附加了phpinfo()
中的配置文件位置Configuration File (php.ini) Path /etc/php5/apache2
Loaded Configuration File /etc/php5/apache2/php.ini
Scan this dir for additional .ini files /etc/php5/apache2/conf.d
Additional .ini files parsed /etc/php5/apache2/conf.d/05-opcache.ini, /etc/php5/apache2/conf.d/10-pdo.ini, /etc/php5/apache2/conf.d/20-json.ini, /etc/php5/apache2/conf.d/20-mysql.ini, /etc/php5/apache2/conf.d/20-mysqli.ini, /etc/php5/apache2/conf.d/20-pdo_mysql.ini, /etc/php5/apache2/conf.d/20-readline.ini
答案 0 :(得分:1)
首先,检查扩展程序已安装(带有相关示例输出):
$ sudo find / -name curl.so\*
/usr/lib64/php/7.0/modules/curl.so
然后,检查扩展程序已启用(再次使用相关输出):
$ grep -Ri curl /etc/php*
/etc/php.d/20-curl.ini:extension=curl.so
如果第一个命令没有产生任何输出,则表明该模块未安装。您需要诊断系统软件包管理器未安装软件包的原因。对于Ubuntu,您可能需要运行sudo apt-get update
。
如果第一个命令有效,但第二个命令没有,你需要启用扩展,然后重新启动Apache:
echo 'extension=curl.so' | sudo tee /etc/php5/apache2/conf.d/99-curl.ini
答案 1 :(得分:0)
你能试试吗?
Worksheets("Report").Range("A1")
或者,
检查你的php.ini文件。
在页面中查找sudo php5enmod curl
如果有extension=php_curl
符号,请在行的开头删除此符号。
答案 2 :(得分:0)
前提是您最初安装了apache& mod-php通过apt-get,正确,这应该足够了,在这种情况下,我最好的猜测是curl确实已安装,但在初始化期间出错,并且display_startup_errors
已关闭。启用display_startup_errors
,重新启动apache,加载php页面,并检查错误日志,那里可能有一条线说明为什么卷曲模块无法加载。