Edit report at https://bugs.php.net/bug.php?id=78086&edit=1
ID: 78086
User updated by: alvaro at demogracia dot com
Reported by: alvaro at demogracia dot com
Summary: Curl silently fails to load under mod_php
-Status: No Feedback
+Status: Closed
Type: Bug
Package: Apache2 related
Operating System: Windows 10
-PHP Version: 7.3.5
+PHP Version: 7.3.6
Assigned To: cmb
Block user comment: N
Private report: N
New Comment:
Sorry for the delay (a trip got in between). I've verified to the best of my ability that:
- PHP directory belongs to PATH
- Apache recognises such PATH
- Apache finds and loads successfully the copy of libssh2.dll provided by PHP binaries (according to
Process Monitor)
... yet Curl is still unavailable under Apache (though it loads fine in command-line):
PHP Warning: PHP Startup: Unable to load dynamic library 'curl' (tried: ext\\curl (No se
puede encontrar el m\xef\xbf\xbddulo especificado.), ext\\php_curl.dll (No se encontr\xef\xbf\xbd el
proceso especificado.)) in Unknown on line 0
I've also tried almost every 7.3.x release for Win64 and learnt that:
- 7.3.0 and 7.3.2 work fine.
- 7.3.3 to 7.3.6 fail.
I mentioned I'm using symlinksâI've switched to regular directories just to be safe.
I've restarted several times. Nothing changed.
I'm totally clueless so far. Is there anything else you'd like me to try?
Previous Comments:
------------------------------------------------------------------------
[2019-06-09 04:22:05] php-bugs at lists dot php dot net
No feedback was provided. The bug is being suspended because
we assume that you are no longer experiencing the problem.
If this is not the case and you are able to provide the
information that was requested earlier, please do so and
change the status of the bug back to "Re-Opened". Thank you.
------------------------------------------------------------------------
[2019-05-31 18:16:01] cmb@php.net
Any news here?
------------------------------------------------------------------------
[2019-05-30 17:38:14] requinix@php.net
Apache (actually Windows) won't try to load libssh2 from the PHP directory because that's
not where it knows to look: it checks the location of the executable, system directories, and the
system or user PATH depending how the application is being run. And I don't know if a symlink
will work, assuming it's in one of those locations of course.
Put libssh2 in the Apache directory, in System32, or add PHP to the system PATH and restart.
------------------------------------------------------------------------
[2019-05-30 16:39:43] cmb@php.net
Also check that there's no "wrong" DLL loaded.
------------------------------------------------------------------------
[2019-05-30 08:51:49] alvaro at demogracia dot com
Yes, I have. I'm actually using a symlink (mklink command) so the path never changes, I hope
that's not an issue.
According to Process Monitor, "httpd.exe" is trying to load "libssh2.dll" from
all sort of locations except PHP directory:
- Apache's base and "bin" directory
- C:\Windows\System32\libssh2.dll
- C:\Windows\System\libssh2.dll
- C:\Windows\libssh2.dll
- Graphics Magick directory
- Oracle Instant Client directory
- C:\Srv\PHP\PEAR\libssh2.dll
... so it's obviously not taking PHP folder into consideration. It's weird because this
same set-up works fine for 7.0, 7.1 and 7.2. I'll check everything again *sigh*
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=78086
--
Edit this bug report at https://bugs.php.net/bug.php?id=78086&edit=1