php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #68047 the curl extension doesn't load using apache
Submitted: 2014-09-18 16:23 UTC Modified: 2014-10-24 23:08 UTC
Votes:14
Avg. Score:4.4 ± 1.2
Reproduced:13 of 13 (100.0%)
Same Version:7 (53.8%)
Same OS:4 (30.8%)
From: leo020588 at gmail dot com Assigned:
Status: Not a bug Package: cURL related
PHP Version: 5.5.17 OS: Windows 7 x64
Private report: No CVE-ID: None
 [2014-09-18 16:23 UTC] leo020588 at gmail dot com
Description:
------------
I tried a clean clean install just to be sure:
1. Unpack php-5.5.17-Win32-VC11-x86.zip
2. Rename php.ini-production -> php.ini
3. Edit php.ini
extension=php_curl.dll
extension_dir = "D:/zerver/system/php/ext"

This exact same steps works fine using php-5.5.16-Win32-VC11-x86.zip

Works ok through cli. So, I tried different flavors of apache (apachelounge) with the same result (curl doesn't load).
- httpd-2.4.10-win32-VC9.zip
- httpd-2.4.10-win32.zip (VC10)
- httpd-2.4.10-win32-VC11.zip

Relevant part from httpd.conf to load apache:
LoadModule php5_module "D:/zerver/system/php/php5apache2_4.dll"
PHPIniDir "D:/zerver/system/php"
AddType application/x-httpd-php .php





Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2014-09-21 14:21 UTC] momchilmg at yahoo dot com
My solution: Copy php_curl.dll from 5.5.16 archive to 5.5.17 and all work fine.
 [2014-10-13 16:14 UTC] ab@php.net
-Status: Open +Status: Feedback
 [2014-10-13 16:14 UTC] ab@php.net
Please check with bug #68208. Your bug looks similar, so you might use deplister.exe to check whether some dll missing or try other suggestions.

Thanks.
 [2014-10-13 20:20 UTC] leo020588 at gmail dot com
deplister.exe shows everything ok.
Adding the php folder to environment path solve the problem.
I guess php-5.17 has new o different dlls compared to my system Win7x64SP1.
 [2014-10-16 23:17 UTC] momchilmg at gmail dot com
PHP 5.5.16 is last version for me without problem with this extension.
php_curl.dll in 5.5.16 is 496KB, but in 5.5.17/5.5.18 is only 403/401KB.
 [2014-10-22 20:43 UTC] maba at mb-systemhaus dot net
Same here:
----------
clean 5.5.18 install
used php.ini-development (which shouldn't change anything compared to prod)
extension=php_curl.dll
extension_dir=c:/..../ext  (containing full pathname)
 [2014-10-24 23:08 UTC] ab@php.net
-Status: Feedback +Status: Not a bug
 [2014-10-24 23:08 UTC] ab@php.net
Ok, so this is an environment issue after all. In 5.5.17 the only thing changed was an upgrade to libcurl itself. That might have changed how the php_curl.dll was built and its size and also added a DLL dependency. However all the dep DLLs (except those from the CRT) are being delivered in the PHP zipball, so setting (or already having) the correct %path% should solve it.

Cheers.
 [2014-10-25 17:43 UTC] maba at mb-systemhaus dot net
I would tend to disagree with the "not a bug" assessment. In the previous releases it was possible to start up PHP with all extensions that came packaged with the ZIP without setting up anything but extension_dir.

The only extension that no longer works this way is php_curl?
 [2014-11-21 14:59 UTC] herb at bobbingwide dot com
I had exactly the same problem with 5.5.18 and initially used the same workaround - copy php_curl.dll from 5.5.16 into my c:\php\ext folder.

But having read these comments, I realised that my problem was due to the fact that when my apache service was started c:\php wasn't in the PATH. It was loading some of the dependent DLLs from c:\apache24\bin (libeay32.dll and ssleay32.dll) but it could not find the new dll - libssh2.dll

Curl was working fine in PHP CLI since c:\php was in my user defined path.

Having added c:\php; to the end of the system's path the problem is resolved.

Whether or not libeay32.dll and ssleay32.dll still need to be present in c:\apache24\bin is now questionable.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Nov 21 13:01:29 2024 UTC