2008-10-14 5 views
2

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

У меня есть исправленная 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? Кто-нибудь испытал эту проблему/имел решение?

Вся помощь будет очень признательна.

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

Tim

+0

Когда вы говорите, что у вас «перезапущен IIS» - вы имеете в виду только (виртуальный) сайт или весь IIS - изменения в конфигурации PHP обычно нуждаются во всех IIS (и, наиболее определенно, в пуле приложений) должен быть перезапущен, чтобы вступить в силу – Ian 2008-10-15 06:06:40

+0

IISRESET в командной строке - это имя, которое вы искали @iAn. :) – stephbu 2008-11-30 20:09:29

ответ

1

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

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

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

0

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

0

У меня возникла странная проблема с 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

расширение = php_mcrypt.dll

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

Удачи.

1

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

0

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