Mcrypt и IIS - модуль не загружается в PHP

У меня Windows 2003 Standard, IIS 6, PHP, MySQL, и Эми пытается заставить работать mcrypt, поэтому я могу использовать phpMyAdmin.

У меня есть нерекомендованный php_mcrypt.dll в php.ini, и этот файл находится в моей папке расширений (c: \ php).

Я загрузил libmcrypt.dll в c: \ php, c: \ php \ ext, c: \ windows, c: \ windows \ system32. Я также нашел вторую версию этого файла на следующем и попробовал это. После каждого изменения я перезапускал IIS.

Что бы я ни пробовал, mcrypt не загружается, когда я проверяю php_info () ;. Но ошибок нет.

Есть ли другая версия php_mcrypt.dll? у кого-нибудь есть версия phpMyAdmin, для которой не нужен mcrypt? Кто-нибудь сталкивался с этой проблемой / есть решение?

Любая помощь будет очень приветствоваться.

Большое спасибо,

Тим

Когда вы говорите, что «перезапустили IIS» - вы имеете в виду только (виртуальный) сайт или весь IIS - изменения в конфигурации PHP обычно требуют перезапуска всего IIS (и, безусловно, пула (ов) приложений) вступить в силу

Ian 15.10.2008 10:06

IISRESET в командной строке - это сообщение, которое вы искали @iAn. :)

stephbu 30.11.2008 23:09

Перезапуск Windows - это отвлекающий маневр - он не сделает больше, чем IISRESET.

stephbu 30.11.2008 23:10
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
2
3
7 414
6

Ответы 6

У меня была такая же проблема, и я обнаружил, что версия libmcrypt.dll, которая у меня была, была повреждена, и когда я загрузил версию из сети, все было в порядке. Поскольку вы уже это сделали, я сомневаюсь, что это поможет?

  • Убедитесь, что ваш extension_dir в php.ini указывает на правильный путь (например, c: / php5 / ext)
  • Попробуйте перезапускать Windows после каждого изменения вместо IIS.
  • libmcrypt.dll должен находиться только в c: \ windows \ system32
  • Чтобы убедиться, что mcrypt (не) загружен, используйте для проверки phpinfo ().

У меня также возникают проблемы с загрузкой mcrypt, но это очень помогло мне приблизиться к решению.

Попробуйте запустить php из командной строки с помощью php -m. Он покажет вам список загруженных модулей.

У меня была странная проблема с Win 2k3 Server + IIS 6 + PHP 5.2.9 + mcrypt. Как только я добавил расширение mcrypt (или mhash, если на то пошло), у fastcgi просто истекло время ожидания. Когда я удалил эти расширения из php.ini, я увидел свою страницу phpinfo (), как и ожидалось. По-настоящему странным было то, что я мог видеть загруженный модуль, когда запускал php -m из командной строки.

Я взял все библиотеки DLL из XAMPP (в папке php) и засунул их все в папку установки PHP (C: \ Program Files \ PHP для меня). После внесения изменений в мой php.ini

extension = php_mcrypt.dll

Я полностью перезапустил IIS, а не перезапустил пул приложений, и моя страница phpinfo работала, как ожидалось. Я не уверен, почему, но fastcgi не смог «увидеть» библиотеки в папке system32, мне пришлось поместить их в корневую папку php.

Удачи.

У нас была такая же проблема на W2k3 (x64) /IIS6/PHP5.2.17. Копирование libmcrypt.dll в % WINDIR% \ SysWOW64 и IISRESET решило проблему.

В моем случае мой сайт выдал ошибку «Предупреждение PHP: mcrypt_decrypt () ...»
Я использую IIS6 - Plesk - PHP 2.5
Итак, я обновил версию PHP в Plesk CP до 5.3, и ошибка исчезла.
Надеюсь, это кому-то поможет.

Полезно, но это действительно должен быть комментарий, а не ответ, поскольку в нем конкретно не рассматривается вопрос.

BBagi 26.01.2013 20:34

Другие вопросы по теме