Я не могу заставить APC правильно работать с моим приложением Zend + Doctrine.Когда я включаю APC, я получаю сообщение об ошибке:
Неустранимая ошибка: доступ к необъявленному статическому свойству: экземпляр Zend_Loader_Autoloader :: $ _ в /var/www/libs/Zend/Loader/Autoloader.php on line92
Я видел множество людей, жалующихся на это, но никто, похоже, не решил их проблему, кроме этого парня: Доступ к необъявленным статическим свойствам: Doctrine \ ODM \ MongoDB \Mapping \ Driver \ AnnotationDriver ::
Я попробовал этот подход, обновив APC с 3.1.3 до 3.1.9.Это не сработало для меня.Я попытался включить nclude_once_override:
apc.include_once_override = 1
Не сработало.
Я также пытался заставить APC не кэшировать Zend_Loader_Autoloaderдобавив следующую строку в apc.ini:
apc.filters = Autoloader.php
Это решило основную проблему, но вызвало еще одну:
Предупреждение: call_user_func () ожидает, что параметр 1 является допустимым обратным вызовом, класс 'Zend_Loader' не найден в /var/www/libs/Zend/Loader/Autoloader.php в строке 472 Предупреждение: call_user_func () ожидает параметр1, чтобы быть действительным обратным вызовом, класс 'Zend_Loader' не найден в /var/www/libs/Zend/Loader/Autoloader.php в строке 472 Неустранимая ошибка: класс 'Doctrine_Event' не найден в / var / www / libs / Doctrine /Record.php в строке 801
Следующее, что я сделал, это заставил APC не кэшировать Zend_Loader
apc.filters = Autoloader.php, Loader.php
Решает проблему выше, но другие классы не могут быть найдены:
Неустранимая ошибка: класс 'Zend_Exception' не найден в /var/www/libs/Zend/Loader.php в строке 99
Я получил APC, чтобы не кэшировать Zend_Exception,но другие классы не будут найдены.
Обратите внимание, что ошибки возникают только со 2-го раза загрузки страницы, после очистки кэша.Загрузка первой страницы работает как талисман.
Кто-нибудь сталкивался с подобной проблемой и смог ее решить?
Большое спасибо.