PHP / cURL при установке Windows:"Указанный модуль не может быть найден."
Вопрос
Я использую PHP 5.2.3 на Windows 2000 Server с IIS 5.Я пытаюсь работать с кудрием, так что в моем php.ini файл, у меня есть эта строка:
Extension_dir = "F:\PHP\ext"
И позже у меня есть:
расширение = php_curl.dll
Файл F:\PHP\ext\php_curl.dll существует, но когда я пытаюсь запустить любой сценарий PHP, я получаю это в журнале ошибок:
Предупреждение PHP:PHP-запуск:Невозможно загрузить динамическую библиотеку 'f: php ext php_curl.dll' - указанный модуль не может быть найден.в Неизвестно на линии 0
Решение
Задача решена!
Хотя в сообщении об ошибке говорилось Указанный модуль не может быть найден, это немного вводит в заблуждение – дело не в том, что он не смог найти php_curl.dll
, а скорее не смог найти модуль, который php_curl.dll
необходимый.Требуются две библиотеки DLL: libeay32.dll
и SSLeay32.dll
.
Итак, вам нужно поместить эти две библиотеки DLL где-нибудь в PATH (например, C:\Windows\system32
).Вот и все.
Однако даже это мне изначально не помогло.Поэтому я скачал zip-архив Windows последней версии PHP, который включает в себя все необходимые библиотеки DLL.Я не переустанавливал PHP, я просто скопировал все библиотеки DLL из папки «ext» в папку расширений PHP (как указано в extension_dir
переменная в php.ini
), и я скопировал версии libeay32.dll
и SSLeay32.dll
из загрузки PHP в мой каталог System32.
Я также сделал iisreset, но не знаю, было ли это необходимо.
Другие советы
libeay32.dll
и ssleay32.dll
должен быть доступен по пути для php_curl.dll
работать правильно.
В Панель управления -> Поиск -> Расширенные настройки системы и используйте кнопку Переменные среды.
Под Системные переменные находить Путь добавить c:/php
папку (или любой другой путь) и перезапустите Apache.
Совет: используйте WAMP-установщик.Все просто работает.Однако это не IIS, поэтому, если это важно, вам следует игнорировать мой совет.;)
РЕДАКТИРОВАТЬ:Я увидел, что вы нашли решение, поэтому проголосовал за него.+1
У меня продолжает возникать та же проблема, хотя я выполнил предложение выше и многие другие, предложенные в Интернете, я получаю
Извините, но этот плагин требует, чтобы Libcurl был активирован на вашем сервере.
Когда я пытаюсь активировать свой плагин.
Отредактировано:Я использовал php 5.3.13, имел Win64 Windows 7, и ни один из растворов у меня не работал.
1. Я пытался скопировать Libeay32.dll sslay32.dll в папке Windows System32 не работала 2.Отредактированные и некомментированные оба файла php.ini не работали 3.Активированный php_curl в расширениях PHP не работал 4.Копировал и заменял несколько раз www.anindya.com версию php_curl.dll, но, похоже, я загружал не ту версию.Версия, которая работала для меня, находилась в разделе «Фиксированные расширения Curl» во втором файле php_curl-5.3.13-VC9-x64.
Надеюсь, это поможет кому-нибудь еще
Столкнулся с этой проблемой, когда обновил php в UwAmp до 7.2.*.Единственное решение, которое сработало для меня, - это загрузить последнюю на тот момент версию Apache (Apache/2.4.37 (Win32)) и заменить версию, поставляемую с UwAmp.Это также включало редактирование примера httpd.conf для создания файла httpd_uwamp.conf.UwAmp нужен этот шаблон для создания фактического httpd.conf при запуске.К сожалению, все остальные предложения, приведенные выше, мне не помогли.Также обратите внимание, что начиная с OpenSSL 1.1, libeay32.dll и ssleay32.dll больше не требуются (см. http://php.net/manual/en/curl.installation.php)