Не удается загрузить динамическую библиотеку mcrypt.dll - PullRequest
0 голосов
/ 30 июня 2010

Я пытаюсь загрузить этот модуль: php_mcrypt.dll ' Все в файле php.ini правильно, посмотрите сами:

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: невозможно загрузить динамическую библиотеку 'C: /PHP/5.2.13/ext \ php_mcrypt1.dll' - Указанный модуль не найден. \ R \ n в поле Неизвестно в строке 0

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

Ответы [ 3 ]

1 голос
/ 30 июня 2010

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

Слава богу за эту статью!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, и он заработал!

1 голос
/ 28 апреля 2011

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

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

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

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

0 голосов
/ 30 июня 2010

'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) - используйте, например, средство обхода зависимостей для этого
  • Обе ли отладочные сборкиили обе сборки выпуска
  • В обеих версиях включена поддержка ZTS или отключена ZTS
  • Для библиотек, которые зависят от дополнительных библиотек (DLL), убедитесь, что они доступны (например, в том же каталоге, что и расширение)

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...