php_curl does not work when I try and install Magento - php

I have Apache version 2.2.22 and PHP 5.3.13. When I try to install Magento it just keeps telling me that curl must be loaded. I have tried to troubleshoot the problem but nothing has solved it. I've done the following:
uncomment php_curl.dll in php.ini file (both in php/ext and the apache/bin folders)
When that didn't work I downloaded two versions of php_ curl fix files (5.3.13 and 5.4.3) and used each to replace the original php_curl.dll file in php/ext.
With 5.4.3 I got the error message that "curl failed to start because the side-by-side configuration is incorrect". Now the 5.3.13 version is in the folder but I get two error messages "Program can't start because php5.dll is missing from your computer" and "ext/php_curl.dll - the specified module could not be found'.
Could someone give me further advice, because at this point I'm clueless on what to do next? I am using wampserver 2.2 and Windows 7.

It seems that more people are having this problem - php_curl.dll is badly compiled and doesn't work under Win7/8 64-bit versions.
I found this topic in official Wamp Server forums and it looks like people provided some answers there:
Wamp Server 2.2 Windows 7 64-bit and curl not working side-by-side configuration incorrect

Update your PHP version to 7.0 or higher.
They have fix the php-curl in >7.0 version see the artical php Chang log

Related

How to enable curl in php 7.3+ in uwamp server

I'm running Uwamp server under windows7 and it works perfectly with php versions from 5.5 to 7.0.3 and with curl enabled.
When I switch to php 7.2, 7.3 or latest 7.4.3 uwamp server still working - but without curl.
php_curl.dll file is enabled under extensions (ext) but phpinfo() confirms that curl extension is missing / not enabled. I compared php.ini with previous php versions, modified it but it still doesn't work.
cURL is NOT installed on this server
I have testet xampp and this server has no problem with curl and php 7.3/7.4. I compared php.ini etc. but curl extension still not working under Uwamp.
It seems that the author of the project has abandoned it, because there have been no updates or activities since many years. Maybe someone using it and can help me to solve it.
Any idea would be greatly appreciated!
finally got a working solution for this problem of uwamp and running an up to date version of php and getting curl working.
I have sat here for a couple of days trying to work why you couldn't get a later version of php 7.0.3 without breaking uwamp and curl. So I learnt how to integrate and test php apache as standalones and then working on updating uwamp. Lots of head scratching of working out how uwamp uses its on the fly configuration setup.
I will list all the steps to update your version of uwamp (to apache 4.2 and php 7.4.4 as of Mar 2020)
Download uwamp (portable or installer)
Download c++ runtime https://aka.ms/vs/16/release/VC_redist.x86.exe (taken from the windows php page)
Install the runtime above
Install uwamp to a directory (in this example will just use c:\ making it install to c:\uwamp after expanding)
Before running uwamp
Goto to apache lounge website and download the latest 32 build of apache (4.2)
https://www.apachelounge.com/download/VS16/binaries/httpd-2.4.41-win32-VS16.zip
Expand this archive, it should create a folder called apache2.4
Step in to this directory and copy all the files and paste them here in your uwamp folder (c:\uwamp\bin\apache). This should overwrite all the apache files and add the latest apachephp dll
TIP. Just make sure you havent expanded the apache2.4 zip in the uwamp apache folder, easy to tell as you will see a apache24 appear
Goto to php.net and download the latest THREAD SAFE version of php (7.4.4)
https://windows.php.net/downloads/releases/php-7.4.4-Win32-vc15-x86.zip
Extract the php zip this folder in to the c:\uwamp\bin\php in to a new folder with name of php-7.4.4 (so the files should be in c:\uwamp\bin\php\php-7.4.4)
There you are, you have completed your manual upgrade of uwamp , run uwamp and if no errors appear with in the GUI, everything should be working. Test by opening a browser and use http://localhost/uwamp/phpinfo or http://127.0.0.1/uwamp/phpinfo or click the "phpinfo button" in the uwamp GUI
This way seems to allowed an upgrade of uwamp (except sql) but resolve a common problem of php and curl not working / breaking.
This works for x86 version installed on a 32/64 bit system.
Still trying to work out the kinks for uwamp to be running 64 bit apache and php but should be possible.
Try and delete the version of PHP that is affected by the missing Curl extension and then re-download the version from inside the AWamp interface. I have had similar problems with other extensions and have solved it this way.

PHP CURL not loading in WAMP after upgrading PHP from 5.3.4 to 5.3.22

I have the exact same issue as PHP cURL not working - WAMP on Windows 7 64 bit
CURL doesn't load at Apache restart, with message: "PHP Startup: Unable to load dynamic library 'c:/wamp/bin/php/php5.3.22/ext/php_curl.dll' - The operating system cannot run %1.\r\n in Unknown on line 0"
Except that I am not installing 5.3.13 as in the other thread but I am attempting to upgrade PHP in an existing WAMP installation from 5.3.4 to 5.3.22, both x64 VC9 TS on a Win 2008R2 64 bits, running Apache 2.2.4 x64.
I did the following steps:
stopped Apache
unzip php5.3.22 in /wamp/bin/php5.3.22;
updated php.ini, httpd.conf and the 2 Wamp config files to point to the new PHP version;
updated php5ts.dll and php5isapi.dll in Apache\bin with the new ones
updated Windows PATH to point to php5.3.22 folder instead of php5.3.4
restarted Apache -> CURL load error message
I could try most of the answers provided in other threads except the one from Matthieu:
Go to http://www.anindya.com/php-5-4-3-and-php-5-3-13-x64-64-bit-for-windows/ and download the curl version that corresponds to your php version under "Fixed curl extensions:".
...as there is no "Fixed curl extension" for 5.3.22 in Anindya's site.
Does anyone know if there is need or not for a "fixed curl lib" after 5.3.13? and where I can find it?
Either there are some typos in your question or you have done a few things wrong.
The new PHP should have gone into \wamp\bin\php\php5.3.22
updated php5ts.dll and php5isapi.dll in Apache\bin with the new ones This is done by Switching versions in WAMP, you dont do it manually
updated Windows PATH to point to php5.3.22 folder instead of php5.3.4 There is no need to put PHP on the PATH, in fact it reduces the ability of WAMPServer to switch between various versions of PHP.
Have a look at this it may help How to install a version of PHP into an existing WAMP install

curl is not working on php 5.4.3 of wamp server

I am using wamp server that installs php version 5.4.3 and I enabled curl extension, edited php.ini files to uncomment curl extensions lines but the problem is that when I try installing composer using console, it gives me a message that says "PHP Startup: unable to load dynamic library 'c:/wamp/bin/php/php5.4.3/ext/php_curl.dll", here is a screenshot of it
I followed instruction from different posts, downloaded curl versions from anindya but with no hope..
Thanks in advance for your time
Make sure your dll is compiled for the version of PHP you're using. So one compiled for 5.5 won't work on 5.4, etc. There's a link in this question that's relevant
PHP cURL not working - WAMP on Windows 7 64 bit
It sounds like you are running a 32bit PHP and have downloaded a 64bit version of PHP_CURL. That wont work
This dll should come as standard with WAMP's PHP's.
Are you sure your problem was not that you forgot that when running PHP in CLI mode you have to configure it using the 'php.ini' file that lives in the c:\wamp\bin\php\php5.4.3\php.ini
So if you uncomment the php_curl extension line in that file it should have worked, until you downloaded the wrong curl dll.
So get a 32bit curl dll for the correct version of php and try again.

program cant start because php5.dll is missing

I installed XAMPP , phpinfo: PHP Version 5.3.5
Downloaded PHPPDT, installed
downloaded webserver debug extension, copied dummy.php
added zend_extension="c:\edward\xampp\php\ext\5_3_x_nts_comp\ZendDebugger.dll"
stop, restart apache, get:
"the program cant start because php5.dll is missing from your computer"
(while php5nts.dll is included)
is installing zend studio ce the alternative or can i make it work with XAMPP? (using Zend Studio CE works)
if your php version is Non-Thread-Safe (nts)
you must use php extension with format example: extension=php_cl_dbg_5_2_nts.dll
else if your php version is Thread-Safe (ts)
you must use php extension with format example: extension=php_cl_dbg_5_2_ts.dll
(notice bolded words)
So if get error like above. Firstly, check your PHP version is nts or ts, if is nts.
Then check in php.ini whether has any line like zend_extension_ts="C:\xammp\php\ext\php_dbg.dll-5.2.x" choose right version of php_dbg.dll-5.2.x from it homepage (google for it).
Change from zend_extension_ts to zend_extension_nts.
Hope this help.
Download php5.dll (http://windows.php.net/download/) and copy it to apache/bin folder. That solved it for me (Win 7 64 bit apache 32 bit)
EDIT:
Start with the non-thread safe version.
For Wamp x86+Phalcon users (with same error):
Take care of download the right version of Phalcon:
Phalcon 1.3.2 - Windows x86 for PHP 5.5.0 (VC11)
I had the same problem I switched from wamp to xampp and yes PHP was working because my path was still pointing to my old installation. I had forgotten to change it to point to my new php installation which version of php didn't match the rest at all.
In case this might help someone, after installing the thread safe version of PHP 5.5.1, everything was working under apache for my dev sites, but I ran into the same "php5.dll is missing" problem installing Composer using the Composer-Setup.exe - or, as I soon discovered, just running something as simple as php -v from the command line. I made a copy of php5ts.dll and named it php5.dll and everything worked. I assume the Composer installer was specifically looking for "php5.dll" and I knew that the thread safe code would be run by the renamed .dll. I also assume something is wrong with my setup to screw up the command line functionality, but with everything working, I have more important issues to deal with than to try and find the problem.
I just now faced this issue while trying to restart XAMPP Apache.
What you can do to solve this is:
download PHP5.dll from http://originaldll.com/file/php5.dll/30704.html
Copy the downloaded php5.dll to C:\xampp\php
Start APACHE and MySql from XAMPP control panel
Hope my solution solves your problem.
Thank You!
I needed to change environment variable PATH and PHPRC. Also open new cmd.
I already had PHP installed and added EasyPHP when the problem came up. After I changed both variables to C:\Program Files (x86)\EasyPHP-DevServer-14.1VC9\binaries\php\php_runningversion it worked fine.
When you open phpinfo()
see if the thread safety is enable or not enable
also see the version of php
and see MSVC-- what is the number in place of --
and see the architecture
these all things help u to get the suitable php driver
here a url help u to get a php driver
https://s3.amazonaws.com/drivers.mongodb.org/php/index.html
What you can do to solve this is:
Download PHP5.dll or PHP7.dll from: http://windows.php.net/download/.
Copy the downloaded php5.dll or php7.dll to C:\xampp\php.
Start Apache and MySQL from XAMPP Control Panel.

step-by-step instructions for installing IMAGEMAGICK on WAMP?

There don't seem to be any concise tutorials/walk throughs for installing ImageMagick on WAMP for use with PHP.
I've tried dozens of combinations of their binary releases with different php extension dll files. I can get imagemagick working fine from the command line, and I can get it to show as ticked in the WAMP extensions, but can't actually use it.
Has anyone come across a good guide for installing this ball ache piece of software?
I've followed http://www.knowledge-transfers.com/it/installing-imagemagick-on-windows-setup-imagick-on-php with no luck...
Update: this is what happens when I follow the steps in PHP farmer's answer on windows7. My php.ini is setup as follows:
extension_dir = "c:/wamp/bin/php/php5.3.0/ext/"
extension=php_imagick.dll
I reboot and get these two errors in this order
and here is the dll file where it should be:
I know this is old post but I spend my all day to make it work, so here are the steps that helped me:
Download ImageMagick Binary Release - http://www.imagemagick.org/script/download.php
Install in C:\imagemagick, on last step check "Add application directory to your system path"
Download Imagick DLL: PHP5.6.x version from http://www.peewit.fr/imagick/ (I have 5.6+ version installed on my localhost
Copy php_imagick.dll to C:\wamp\bin\php\ext
Download PHP 5.6 Thread Safe (TS) x86 version from http://pecl.php.net/package/imagick/3.1.2/windows
Copy CORE_RL_* files to C:\wamp\bin\apache\bin\
Edit php.ini file in C:\wamp\bin\apache\bin\php.ini, add extension=php_imagick.dll line in extensions section
Copy all files from C:\imagemagick\modules\coders and C:\imagemagick\modules\filters to C:\imagemagick to load ImageMagick supported formats
Go to Control Panel -> System -> Advanced Settings -> Environment Variables -> New System Variable -> MAGICK_HOME = C:\imagemagick
Restart Wamp server and check phpinfo() for imagick plugin
If last step does not work, restart Windows
I have improved fsasvari answer to cater general scenarios and versions. All credits to him.
Install Imagick in WAMP
Open your phpinfo() page
Check the below
PHP version (mine : 5.5.12)
Compiler (mine : MSVC11 (Visual C++ 2012) )
Architecture : (mine : x64)
Thread Safety : enabled
Loaded Configuration File (mine : C:\wamp\bin\apache\apache2.4.9\bin\php.ini)
extension_dir : (mine : c:/wamp/bin/php/php5.5.12/ext/)
Apache Bin (Not in phpinfo() page) : C:\wamp\bin\apache\apache2.4.9\bin\
Get the latest release match to your architecture from here (for me it was ImageMagick-x86_64-pc-windows.exe).
Copy all files from C:\imagemagick\modules\coders and C:\imagemagick\modules\filters to C:\imagemagick to load ImageMagick supported formats
Install in C:\imagemagick, on last step check "Add application directory to your system path"
Download the PECL matching to your architecture
http://pecl.php.net/package/imagick/3.1.2/windows
(for me : 5.5 Thread Safe (TS) x64)
Extract it and copy all the CORE_RL_* files to apache bin folder (mine : C:\wamp\bin\apache\apache2.4.9\bin)
Copy php_imagick.* files to extension dir (mine : c:/wamp/bin/php/php5.5.12/ext/)
Edit php.ini file (mine : C:\wamp\bin\apache\apache2.4.9\bin\php.ini)
add extension=php_imagick.dll line in extensions section
Go to Control Panel -> System -> Advanced Settings -> Environment Variables -> New System Variable -> MAGICK_HOME = C:\imagemagick
Restart Wamp server and check phpinfo() for imagick plugin
If last step does not work, restart Windows (Specially if you have previously installed imagemagick in different folder/version)
For WAMPSERVER 3.1.9 64bit, PHP Version: 7.3.5
I had a lot of trouble with this as well and some things I did wrong was that I doubted ImageMagick would load on my new php version. But you have to believe it will work and don't try with older php versions :)
So this was my approach, remember to follow it with your own settings and versions/folders.
Before you start, make sure you running the php version you want to run. If you installed Wampserver 3, you may click the wamp icon and go to php version and activate the one you want to run.
1
Get latest ImageMagick version for your system here: http://ftp.icm.edu.pl/packages/ImageMagick/binaries/
(I got the ImageMagick-x86_64-pc-windows.exe in the bottom)
2
Install ImageMagick in C:/imagemagick (I put it in lower cases),
You will be asked for some stuff during install, just make sure the path thingy is ticked.
You should also tick the convert thingy if it allows you.
Then after install you can run CMD and type convert -version to see if imagick is installed.
3
Run <?php phpinfo(); ?> And find out these settings:
PHP Version: 7.3.5
System: Windows
Compiler: MSVC15 (Visual C++ 2017) ([VC15])
Architecture: x64 (or maybe you have x86)
Thread Safety: enabled ([TS] else [NTS])
You probably have other settings, but you need to remember yours to download the proper php_imagick.dll
4
Get the php_imagick.dll you want for your php version from here: http://pecl.php.net/package/imagick
I got mine from here: http://pecl.php.net/package/imagick/3.4.4/windows for php 7.3
Remember your info from the phpinfo(), it has to match, else it won't work.
5
After you unzip it, copy the php_imagick.dll and paste it in C:/wamp64/bin/php/php7.3.5/ext/
Then copy all the other .dll files from that folder into C:/wamp64/bin/apache/apache2.4.39/bin/
Yes it's dirty but you will get it working like this.
6
Add extension=php_imagick.dll in C:/wamp64/bin/php/php7.3.5/phpForApache.ini
I added it after the other extensions in the file.
7
Restart all Wamp services.
If you been messing around earlier with installs, you might have to restart the computer due to some weird cache stuff.
8
Check phpinfo() again if imagick shows up and try something like $im = new Imagick();
9
Click the Wamp icon -> php -> extensions, php_imagick should be listed.
Good luck! :)
PHP 5.4 php_imagick.dll is here: http://www.peewit.fr/imagick/ .
I read somewhere that 64bit php doesnt work with php_imagick. That might be the case when you get this error in apache_error.log
PHP Warning: PHP Startup: Unable to load dynamic library 'c:/wamp/bin/php/php5.4.3/ext/php_imagick.dll' -
%1 is not a valid Win32 application.\r\n in Unknown on line 0
As mentioned above, it was also necessary to add this into httpd.conf (also, i read you cant have spaces/dashes/dots):
SetEnv MAGICK_HOME C:/imagemagick"
If you dont, you might get this error:
"PHP Warning: PHP Startup: Unable to load dynamic library 'c:/wamp/bin/php/php5.4.3/ext/php_imagick.dll' -
The specified procedure could not be found. in Unknown on line 0"
In the end, this article might partially help: http://www.elxsy.com/2009/07/installing-imagemagick-on-windows-and-using-with-php-imagick/
This was a headache for me as well, but unfortunately I installed this quite awhile ago. The instructions from that link you posted seem accurate. Have you ran phpinfo(); to see if it is installed in the Apache Environment? It should be listed as MAGICK_HOME.
Make sure "SetEnv MAGICK_HOME C:/imagemagick" is set at the end of your httpd.conf file. Assuming imagemagick is installed in that directory.
Be sure that you have the extension "php_imagick.dll" in your php.ini file as well.
It should work just fine if you have all those set.
On another note, here is a nice little library someone built to make imagick easier to use. https://github.com/francodacosta/phmagick
I hope that helps! Good luck!
I've never used WAMP but I have found that sometimes installing PHP extensions on Windows I need to ensure that any dll's that the extension relies on is in the Windows system PATH. If there is more than the one dll packaged with the imagemagick extension, try adding the directory that the dll's reside in to the Windows system PATH then REBOOT (to ensure that the web server gets a copy of the NEW environment).
I know this is an old question but i guess this will help someone someday out there....
If you are on WAMPP and have PHP 5.4.x installed , go here http://www.peewit.fr/imagick/
and download appropriate files as instructed. It will work.
Please see this answer already on StackOverflow:
Installing ImageMagick extension with php/windows
I answered this question some time ago. This solves the DLL mismatch error.

Categories