Вот что я имею в своем PHP.ini:
extension=php_apc.dll ... [APC] apc.enabled = 1
Я запускаю Apache 2.0.59, PHP версии 5.2.3 на Windows Server 2003.
Я уже установил XDebug, скомпилированный с vc6. Таким образом, я получил версию APC версии 5.2 vc6. Ниже приведены имена файлов, которые я загрузил (и поместил * .dll в php / ext /).
php_apc-3.1.5-5.2-vc6-x86.zip php_apc-3.1.5-5.2-nts-vc6-x86.zip
Я получил их здесь .
Я попытался перезагрузить сервер, и в обоих случаях я получаю следующую ошибку:
PHP Warning: PHP Startup: Unable to load dynamic library './ext/php_apc.dll' - The specified module could not be found.\r\n in Unknown on line 0
Попробуйте использовать полную букву диска и путь к extension_dir
в php.ini
:
; Directory in which the loadable extensions (modules) reside. ; http://php.net/extension-dir ; extension_dir = "./" ; On windows: extension_dir = "C:\somedir\php\ext"
И перезапустите Apache после внесения изменений.
(Это может быть что-то еще, но это первое, что я проверю на системах Windows – эти отвратительные пути к файлам.)
Чтобы выполнить другие ответы:
Используя нететьбезопасную (NTS) версию DLL вместо надежной потоковой, я решил проблему для меня.
То есть, только версия NTS была совместима с моей установкой WAMP.
Вы можете проверить это:
Примечание. В Windows APC необходим временный путь для существования и может быть доступен для записи веб-сервером. Он проверяет переменные окружения TMP, TEMP и USERPROFILE в этом порядке и, наконец, пытается запустить каталог WINDOWS, если ни один из них не установлен.
Вы должны быть уверены, что DLL имеет правильный уровень архитектуры . У меня была такая же проблема, пытаясь загрузить файл из php_apc-3.1.10-5. 4 -vc6-x86.zip. Это не сработало, а DLL – с php_apc-3.1.10-5. 3 -vc6-x86.zip работал. Однако я не знаю, как найти нужный файл, не играя в репозиторий PHP. НТН.