Я не могу сделать ioncube encoder
работать с Apache 2.4.12
а также PHP 5.5.8
, Итак, вот что я уже сделал:
1. Installed httpd-2.4.12-win32-VC11 [http://www.apachelounge.com/download/]
2. Installed php-5.5.8-Win32-VC11-x64.zip [http://windows.php.net/downloads/releases/archives/]
Их грубая комбинация работает нормально — я могу запускать php-скрипты и т. Д. Затем я:
3. Installed ioncube for Windows VC11 (64 bits) [https://www.ioncube.com/loaders.php]
Я внес исправления в php.ini
и когда я делаю php -m
Я вижу, что он загружает расширение ioncube без каких-либо ошибок. Однако, когда я сейчас запускаю Apache, я получаю сообщение об ошибке zend_get_hash_value
а также php5ts.dll
, (PS. Комбинация с Apache 2.2, PHP 5.4 и ioncube работает для меня, но кажется довольно устаревшей).
Похоже, вы не соответствовали поточно-ориентированной версии Apache и загрузчику ionCube. Расширения PHP должны соответствовать именно так версия, на которой они работают, то есть PHP с поддержкой безопасности потоков имеет иметь многопоточный загрузчик.
Чтобы подтвердить это, перейдите к выводу вашего phpinfo();
и искать запись Thread Safety
, Если это говорит disabled
убедитесь, что у вас есть Non-TS
версия загрузчика ionCube (Win x64 Non-TS zip). Точно так же, если это говорит enabled
, убедитесь, что у вас есть многопоточная версия загрузчика (Win x64 TS zip).
Кроме того, рассмотрите возможность использования 32-битного PHP / Apache в Windows, поскольку PHP-64-битная версия по-прежнему помечена как экспериментальная и может вызвать проблемы с загрузчиком ionCube:
X64-сборки PHP для Windows следует считать экспериментальными и пока не обеспечивают поддержку 64-битных целых или больших файлов (источник)
Других решений пока нет …