2010-06-29 6 views
0

Я пытаюсь загрузить этот модуль: php_mcrypt.dll» Все в файле php.ini является правильным, смотрите сами:Не удается загрузить динамическую библиотеку mcrypt.dll

extension_dir = "C:/PHP/5.2.13/ext" 
extension=php_mcrypt.dll 

Файл существует на этом пути. И другие модули находятся там и успешно загружены. У этого есть только проблема с этим конкретным модулем.

У меня есть 64-битной Windows XP, Apache 2.2, PHP 5.2.13 ...

Но я получаю это предупреждение (error.log из Apache): PHP Предупреждение: PHP Startup: Не удается загрузить динамический библиотека 'C: /PHP/5.2.13/ext \ php_mcrypt1.dll' - указанный модуль не найден. \ r \ n в Unknown в строке 0

PHP сам работает нормально. Но одному из наших приложений нужен этот модуль, и он бросает мне эту уродливую ошибку. Почему это показывает мне две обратные косые черты в файле журнала?

+0

Я думаю, что вы можете игнорировать обратную косую черту: сообщение «строка 0» обычно является симптомом для 32-разрядной/64-разрядной проблемы или конфликта версий. Какие версии Apache и PHP вы используете? (У них есть 64-битные версии вообще?) –

+0

извините за мой поздний ответ, но мне пришлось отправиться домой. Я использую Apache 2.2 и PHP 5.2.13. – Kel

ответ

0

'C: /PHP/5.2.13/ext \ php_mcrypt1.dll'

Я бы сказал, что есть какая-то опечатка на вашем php.ini (дополнительный 1). Возможно, вы загружаете другой php.ini из ожидаемого результата (см. Вывод php.ini, чтобы убедиться).

Кроме этого убедитесь, что php_mcrypt.dll и PHP:

  • были связаны с одной и той же VC библиотеки времени выполнения (обычно MSVCRT.DLL для VC6 или msvcrt90.dll для VC9) - использовать, например, dependency walker для этого
  • ли как отладочной версии или оба релиза строит
  • Оба позволили ЗТС или ZTS отключены
  • Для библиотек, которые зависят от дальнейших библиотек (DLL), убедитесь, что они доступны (например, в том же каталоге, в качестве расширения)

PHP должен давать вам смысл ошибок, если какое-либо из первых трех условий, указанных выше, не выполняется, но я все равно их написал, потому что я не уверен в PHP 5.2.

0

Ребята, я нашел решение!

Слава богу за эту статью! http://blogs.iis.net/donraman/archive/2009/10/16/configuring-php-extension-on-windows-a-simple-way.aspx


Там было слишком много проблем сообщалось в нашем форуме о не в состоянии настроить один конкретный расширение. Проблем много:

* Configuring a non-compatible version of the extension 
* Missing some dependent DLL 
* Trying to use thread safe version of the extension DLL for non thread safe PHP build and vice-versa 

Итак, я в основном установлен PHP в другой каталог с помощью программы установки PHP MSI, который можно найти здесь: http://windows.php.net/download/. Я только установил PHP без сервера Apache и выбрал расширение mcrypt. После завершения установки я скопировал файл dll в мой настоящий каталог PHP, перезапустил Apache, и он сработал!

+0

Это в основном то, что я сказал в своем ответе .... – Artefacto

1

им не уверен, что существует 64-битная версия libmcrypt.дллы можно скачать там проблему не удалось загрузить расширение php_mcrypt.dll на основе зависимости от libmcrypt.dll

  1. скачать libmcrypt.dll из следующей ссылки http://files.edin.dk/php/win32/mcrypt/
  2. скопировать и вставить его в Apache/бункер/например: (C: \ Program Files \ Apache \ BIN)
  3. раскомментировать расширение = php_mcrypt.dll и расширение = php_mcrypt_filter.dll
  4. перезагрузить веб-сервер Apache с помощью (C: \ Program Files \ Apache \ Bin \ ApacheMonitor.exe)

для 32 битного окна компьютера с веб-сервером Apache установлен будет работать по крайней мере, он хорошо работает на моем Windows Server 2003 с Apache/2.2.8 (Win32) PHP/5.2.6

хорошо для drupal6, wordpress, magento и много cms, используя php :)

Смежные вопросы